<?php
 Session_Start () ;
 If (!$_SESSION ["repertoire_config"]) { Header ("Location: ../../") ; }
 Include ("../../include/garennes.cfg") ;
 Include ("../../include/init.php") ;
 Include ("../include/config.inc") ;
 verif_droits ($droit_courant, $_SESSION ["code"]) ;
 
 // Destruction des groupes alias en trop par rapport aux services profs
 $al = SQL_commande ("SELECT professeur,id_service_prof FROM services_prof WHERE professeur<0", $id_sql) ;
 $nbr_al = SQL_nbr_lignes ($al) ;
 $requete1 = $requete2 = "" ;
 For ($ii = 0 ; $ii < $nbr_al ; $ii++)
  {
   $als = SQL_ligne_suivante ($al) ;
   If ($ii > 0) { $requete1 .= " AND " ; $requete2 .= " AND " ; }
   $requete1 .= "id_alias!='".(-$als [0])."'" ;
   $requete2 .= "id_service_prof!='".$als [1]."'" ;
  }
 $okk = SQL_commande ("DELETE FROM alias WHERE ".$requete1, $id_sql) ;
 $okk = SQL_commande ("DELETE FROM groupes_alias WHERE ".$requete2, $id_sql) ;
 // Destruction des alias en double
 $al = SQL_commande ("SELECT DISTINCT a.id_groupe_alias,b.id_groupe_alias FROM groupes_alias a,groupes_alias b WHERE a.id_alias=b.id_alias AND a.code=b.code
                         AND a.numero=b.numero AND a.id_utilisateur=b.id_utilisateur AND a.id_service_classe=b.id_service_classe
                         AND a.id_service_prof=b.id_service_prof AND a.millesime=b.millesime AND a.id_groupe_alias!=b.id_groupe_alias
		    ORDER BY a.id_groupe_alias", $id_sql) ;
 $nbr_al = SQL_nbr_lignes ($al) ;
 $table [0] = 0 ;
 For ($ii = 0 ; $ii < $nbr_al ; $ii++)
  {
   $als = SQL_ligne_suivante ($al) ;
   $ok = 0 ;
   For ($jj = 1 ; $jj <= $table [0] ; $jj++)
    {
     If (($table [$jj] == $als [0]) Or ($table [$jj] == $als [1])) { $ok = 1 ; }
    }
   If ($ok == 0)
    {
     $okk = SQL_commande ("DELETE FROM groupes_alias WHERE id_groupe_alias='".$als [0]."' LIMIT 1", $id_sql) ;
     $table [0] = $table [0] + 1 ;
     $table [$table [0]] = $als [0] ;
    }
  }
 $okk = SQL_commande ("DELETE FROM groupes_alias WHERE id_utilisateur='0'", $id_sql) ;
 // Destruction des groupes alias en trop
 $al = SQL_commande ("SELECT a.id_alias FROM alias a,groupes_alias b WHERE a.id_alias=b.id_alias", $id_sql) ;
 $nbr_al = SQL_nbr_lignes ($al) ;
 $requete = "SELECT id_groupe_alias FROM groupes_alias WHERE " ;
 For ($ii = 0 ; $ii < $nbr_al ; $ii++)
  {
   $als = SQL_ligne_suivante ($al) ;
   If ($ii > 0) { $requete .= " AND " ; }
   $requete .= "id_alias!='".$als [0]."'" ;
  }
 $al = SQL_commande ($requete, $id_sql) ;
 $nbr_al = SQL_nbr_lignes ($al) ;
 For ($ii = 0 ; $ii < $nbr_al ; $ii++)
  {
   $als = SQL_ligne_suivante ($al) ;
   $okk = SQL_commande ("DELETE FROM groupes_alias WHERE id_groupe_alias='".$als [0]."'", $id_sql) ;
  }

 Function ajoute_verification ($id, $nom)
  {
   Global $maj_notes ;
   $ok_ac = 0 ;
   For ($ac = 1 ; $ac <= $maj_notes [0][0] ; $ac++)
    {
     If ($maj_notes [$ac][0] == $id) { $ok_ac = 1 ; Break ; }
    }
   If ($ok_ac == 0)
    {
     $maj_notes [0][0]++ ;
     $maj_notes [$maj_notes [0][0]][0] = $id ;
     $maj_notes [$maj_notes [0][0]][1] = $nom ;
    }
  }
 
 /**
 * Fonction d'affichage des atributions
 * @param int $id_classe Identifiant de la classe
 * @param array $groupements Ensemble des groupements venant de 'groupement_disciplines ()'
 * @param int $millesime Millesime
 */
 Function affichage_attributions ($id_classe, $millesime, $groupements, $traitement, $nom_formulaire)
  {
   Global $id_sql, $l, $gestion, $intitule_disc, $intitule_groupe_disc, $droit_prof, $id_cpe ;
   // Liste de toutes les disciplines de la classe en ordre alphabetique
   $resultat = structure_pedagogique ($id_classe, -2, $millesime) ;
   $nbr_res = SQL_nbr_lignes ($resultat) ;
   If ($nbr_res > 0)
    {
     $table_disc [0][0] = 0 ;
     $ligne = "<form action=\"".$traitement."\" method=\"post\" name=\"".$nom_formulaire."\">" ;
     $ligne .= "<table border=\"0\" align=\"center\" cellspacing=\"0\" cellpadding=\"0\" bgcolor=\"".$l ["couleur_fond"]."\" width=\"100%\">" ;
     $ligne .= "<tr>" ;
     $ligne .= "<td><a href=\"javascript:ouvrefenetre('./imp_struct_peda.php?fenetre=1&id_classe=-".$id_classe."',400,500)\"><img src=\"../images/imprimante.png\" border=\"0\" title=\"Impression de la structure p&eacute;dagogique.\" ALT=\"Imprimer.\"></a></td>" ;
     $ligne .= "<td colspan=\"".(2+$groupements [0][0])."\"><b>&nbsp;Modification&nbsp;de&nbsp;l'attribution&nbsp;</b></td>" ;
     $ligne .= "</tr>" ;
     $ligne .= "<tr bgcolor=\"".$l ["lien"]."\">" ;
     $ligne .= "<td align=\"center\">&nbsp;".$intitule_disc [0]."&nbsp;</td>" ;
     $ligne .= "<td align=\"center\">&nbsp;Enseignant&nbsp;</td>" ;
     $ligne .= "<td align=\"center\">&nbsp;Sans&nbsp;".$intitule_groupe_disc [0]."&nbsp;</td>" ;
     For ($j = 1 ; $j <= $groupements [0][0] ; $j++) { $ligne .= "<td align=\"center\">&nbsp;".$groupements [$j][1]."&nbsp;</td>" ; }
     $ligne .= "</tr>" ;
     For ($i = 1 ; $i <= $nbr_res ; $i++)
      {
       $lgn = SQL_tableau_associatif ($resultat, "") ;
       $ok_disc = 0 ;
       For ($j = 1 ; $j <= $table_disc [0][0] ; $j++)
        {
         If (($table_disc [$j][0] == $lgn ["id_service_prof"]) And ($table_disc [$j][1] == $lgn ["id_service_classe"])) { $ok_disc = 1 ; }
        }
       If ($ok_disc == 0)
        {
         $table_disc [0][0]++ ;
         $table_disc [$table_disc [0][0]][0] = $lgn ["id_service_prof"] ;
         $table_disc [$table_disc [0][0]][1] = $lgn ["id_service_classe"] ;
	 $id_css = "entree_" ;
         $ligne .= "<tr" ; If ($table_disc [0][0]%2 == 0) { $ligne .= " bgcolor=\"".$l ["nom"]."\"" ; $id_css .= "surbrillance" ; } Else { $id_css .= "normale" ; }
         $ligne .= ">" ;
         // Discipline
         $ligne .= "<td valign=\"middle\"><font size=\"-6\">&nbsp;" ;
         Switch ($affiche_numero)
          {
 	   Case  0 : $ligne .= "(".$lgn ["id_service_prof"].")" ; Break ;
 	   Case  1 : $ligne .= ($i+1)."-" ; Break ;
 	   Default : Break ;
 	  }
         $ligne .= "&nbsp;".Str_Replace (" ", "&nbsp;", $lgn ["nom_court"])."&nbsp;" ;
         // Sous-discipline
         $sous_disc = SQL_commande ("SELECT nom FROM sous_disciplines WHERE id_sous_discipline='".$lgn ["sous_discipline"]."' LIMIT 1", $id_sql) ;
	 If (SQL_nbr_lignes ($sous_disc) == 1)
	  {
           $sd = SQL_ligne_suivante ($sous_disc) ;
           $ligne .= "[<i>".$sd [0]."</i>]&nbsp;" ;
          }
         $ligne .= "</font></td><td><font size=\"-6\">&nbsp;" ;
         // Enseignants
         // Verification de l'alias
         If ($lgn ["professeur"] < 0)
          {
           $ok = SQL_commande ("SELECT id_utilisateur FROM groupes_alias WHERE numero='1' AND id_alias='".(-$lgn ["professeur"])."' AND millesime='".$millesime."' LIMIT 1", $id_sql) ;
           If (SQL_nbr_lignes ($ok) == 1)
            {
             $ll = SQL_ligne_suivante ($ok) ;
             $ok_u = SQL_commande ("SELECT id_utilisateur FROM utilisateurs WHERE id_utilisateur='".$ll [0]."' LIMIT 1", $id_sql) ;
             If (SQL_nbr_lignes ($ok_u) != 1) { $lgn ["professeur"] = 0 ; }
            }
           Else { $lgn ["professeur"] = 0 ; }
          }
         If ($lgn ["professeur"] >= 0)
          {
           If ($lgn ["professeur"] == 0)
            {
             $nbr_controles = SQL_commande ("SELECT COUNT(id_controle) FROM controles WHERE service_prof='".$lgn ["id_service_prof"]."' AND millesime='".$millesime."' AND professeur!='0'", $id_sql) ;
             $lc = SQL_ligne_suivante ($nbr_controles) ;
             If ($lc [0] != 0)
              {
               $id_prof = SQL_commande ("SELECT professeur FROM controles WHERE service_prof='".$lgn ["id_service_prof"]."' AND millesime='".$millesime."' AND professeur!='0' LIMIT 1", $id_sql) ;
               $idp = SQL_ligne_suivante ($id_prof) ;
               $lgn ["professeur"] = $idp [0] ;
               $ok = SQL_commande ("UPDATE services_prof SET professeur='".$idp [0]."' WHERE id_service_prof='".$lgn ["id_service_prof"]."' LIMIT 1", $id_sql) ;
              }
            }
	   $ligne .= nom_prenom_utilparid ($lgn ["professeur"], 3, 5, 0) ;
          }
         Else { $ligne .= "&Eacute;quipe&nbsp;d'enseignants&nbsp;" ; }
         $ligne .= "</td>" ;
         // Action
	 $id = groupement_service_prof ($lgn ["id_service_prof"],$millesime,$id_sql) ;
	 $ligne .= "<input type=\"hidden\" name=\"att_cl_old_".$i."\" value=\"".$id."\">" ;
	 $ligne .= "<input type=\"hidden\" name=\"id_sp_".$i."\" value=\"".$lgn ["id_service_prof"]."\">" ;
	 $ligne .= "<td align=\"center\"><input type=\"radio\" name=\"att_cl_".$i."\" value=\"0\" id=\"".$id_css."\"" ; If ($id == 0) { $ligne .= " checked" ; }
	 $ligne .= "></td>" ;
	 For ($j = 1 ; $j <= $groupements [0][0] ; $j++)
	  {
           $ligne .= "<td align=\"center\"><input type=\"radio\" name=\"att_cl_".$i."\" value=\"".$groupements [$j][0]."\" id=\"".$id_css."\"" ;
	   If ($id == $groupements [$j][0]) { $ligne .= " checked" ; }
	   $ligne .= "></td>" ;
	  }
         $ligne .= "</tr>" ;
        }
      }
 
     If (($gestion [0] == 3) Or ($gestion [0] == 4))
      {
       // Discipline vie scolaire
       $id_css = "entree_" ;
       $ligne .= "<tr" ; If ($table_disc [0][0]%2 == 1) { $ligne .= " bgcolor=\"".$l ["nom"]."\"" ; $id_css .= "surbrillance" ; } Else { $id_css .= "normale" ; }
       $ligne .= ">" ;
       $ligne .= "<td>&nbsp;<font size=\"-6\">Vie&nbsp;Scolaire</font>&nbsp;</td>" ;
       $ligne .= "<td>&nbsp;<font size=\"-6\">".nom_prenom_utilparid ($id_cpe, 3, 5, 0)."</font>&nbsp;</td>" ;
       $id = restaure_configuration_defaut ("SYSTEME_PARAM","STRUCTURE_VS","GROUPE_".$id_classe,0) ;
       $ok = 0 ;
       For ($j = 1 ; $j <= $groupements [0][0] ; $j++)
	{
	 If ($id == $groupements [$j][0]) { $ok = 1 ; }
	}
       If ($ok == 0) { $id = 0 ; sauvegarde_configuration ("SYSTEME_PARAM","STRUCTURE_VS","GROUPE_".$id_classe,0) ; }
       $ligne .= "<td align=\"center\"><input type=\"radio\" name=\"att_vs\" value=\"0\" id=\"".$id_css."\"" ; If ($id == 0) { $ligne .= " checked" ; }
       $ligne .= "></td>" ;
       For ($j = 1 ; $j <= $groupements [0][0] ; $j++)
	{
         $ligne .= "<td align=\"center\"><input type=\"radio\" name=\"att_vs\" value=\"".$groupements [$j][0]."\" id=\"".$id_css."\"" ;
	 If ($id == $groupements [$j][0]) { $ligne .= " checked" ; }
	 $ligne .= "></td>" ;
	}
       $ligne .= "</tr>" ;
      }
     // Ligne d'etat
     $ligne .= "<tr><td align=\"center\" colspan=\"".(3+$groupements [0][0])."\">" ;
     $ligne .= "<input type=\"hidden\" name=\"nbr\" value=\"".$nbr_res."\">" ;
     $ligne .= "<input type=\"hidden\" name=\"action\" value=\"3\">" ;
     $ligne .= "<input type=\"hidden\" name=\"onglet\" value=\"0\">" ;
     $ligne .= "<input type=\"hidden\" name=\"code\" value=\"".$_SESSION ["code"]."\">" ;
     $ligne .= "<input type=\"hidden\" name=\"id_classe\" value=\"".$id_classe."\">" ;
     $ligne .= "<input type=\"image\" src=\"../images/valider.png\" name=\"requete\" value=\"Valider\" border=\"0\" alt=\"Valider\">" ;
     $ligne .= "</td></tr></table></form>" ;
    }
   Else
    {
     If (($gestion [0] == 3) Or ($gestion [0] == 4))
      {
       // Uniquement discipline vie scolaire
       $id_css = "entree_normale" ;
       $ligne = "<form action=\"".$traitement."\" method=\"post\" name=\"".$nom_formulaire."\">" ;
       $ligne .= "<table border=\"0\" align=\"center\" cellspacing=\"0\" cellpadding=\"0\" bgcolor=\"".$l ["couleur_fond"]."\" width=\"100%\">" ;
       $ligne .= "<tr>" ;
       $ligne .= "<td><a href=\"javascript:ouvrefenetre('./imp_struct_peda.php?fenetre=1&id_classe=-".$id_classe."',400,500)\">" ;
       $ligne .= "<img src=\"../images/imprimante.png\" border=\"0\" title=\"Impression de la structure p&eacute;dagogique.\" ALT=\"Imprimer.\"></a></td>" ;
       $ligne .= "<td colspan=\"".(2+$groupements [0][0])."\"><b>&nbsp;Modification&nbsp;de&nbsp;l'attribution&nbsp;de&nbsp;la&nbsp;vie&nbsp;scolaire&nbsp;</b></td>" ;
       $ligne .= "</tr>" ;
       $ligne .= "<tr bgcolor=\"".$l ["lien"]."\">" ;
       $ligne .= "<td align=\"center\">&nbsp;".$intitule_disc [0]."&nbsp;</td>" ;
       $ligne .= "<td align=\"center\">&nbsp;CPE&nbsp;</td>" ;
       $ligne .= "<td align=\"center\">&nbsp;Sans&nbsp;".$intitule_groupe_disc [0]."&nbsp;</td>" ;
       For ($j = 1 ; $j <= $groupements [0][0] ; $j++) { $ligne .= "<td align=\"center\">&nbsp;".$groupements [$j][1]."&nbsp;</td>" ; }
       $ligne .= "</tr>" ;
       $ligne .= "<tr><td>Vie&nbsp;Scolaire&nbsp;</td>" ;
       $ligne .= "<td>&nbsp;".nom_prenom_utilparid ($id_cpe, 3, 5, 0)."&nbsp;</td>" ;
       $id = restaure_configuration_defaut ("SYSTEME_PARAM","STRUCTURE_VS","GROUPE_".$id_classe,0) ;
       $ligne .= "<td align=\"center\"><input type=\"radio\" name=\"att_vs\" value=\"0\" id=\"".$id_css."\"" ; If ($id == 0) { $ligne .= " checked" ; }
       $ligne .= "></td>" ;
       For ($j = 1 ; $j <= $groupements [0][0] ; $j++)
	{
         $ligne .= "<td align=\"center\"><input type=\"radio\" name=\"att_vs\" value=\"".$groupements [$j][0]."\" id=\"".$id_css."\"" ;
	 If ($id == $groupements [$j][0]) { $ligne .= " checked" ; }
	 $ligne .= "></td>" ;
	}
       $ligne .= "</tr><tr>" ;
       $ligne .= "<td align=\"right\" colspan=\"".(3+$groupements [0][0])."\">" ;
       $ligne .= "<input type=\"hidden\" name=\"nbr\" value=\"0\">" ;
       $ligne .= "<input type=\"hidden\" name=\"action\" value=\"3\">" ;
       $ligne .= "<input type=\"hidden\" name=\"onglet\" value=\"0\">" ;
       $ligne .= "<input type=\"hidden\" name=\"code\" value=\"".$_SESSION ["code"]."\">" ;
       $ligne .= "<input type=\"hidden\" name=\"id_classe\" value=\"".$id_classe."\">" ;
       $ligne .= "<input type=\"image\" src=\"../images/valider.png\" name=\"requete\" value=\"Valider\" border=\"0\" alt=\"Valider\">" ;
       $ligne .= "</td></tr></table></form>" ;
      }
     Else
      {
       $ligne  = "<table border=\"0\" align=\"center\" cellspacing=\"0\" cellpadding=\"0\" bgcolor=\"".$l ["couleur_fond"]."\" width=\"100%\">" ;
       $ligne .= "<tr><td align=\"center\"><br>&nbsp;Aucun&nbsp;service&nbsp;d&eacute;clar&eacute;&nbsp;!&nbsp;<br>&nbsp;</td></tr>" ;
       $ligne .= "</table>" ;
      }
    }
   Return $ligne ;
  }
 
 /**
 * Fonction d'affichage du contenu
 * @param int $id_classe Identifiant de la classe
 * @param int $id_groupe Identifiant du groupe de disciplines (0=non attribues,-1=Tout le monde)
 * @param int $millesime Millesime
 */
 Function affichage_etat ($id_classe, $id_groupe, $millesime, $num_onglet)
  {
   Global $id_sql, $l, $gestion, $intitule_disc, $droit_prof, $id_cpe, $gestion ;
   // Liste des disciplines de la classe
   $resultat = structure_pedagogique ($id_classe, $id_groupe, $millesime) ;
   $nombre_res = SQL_nbr_lignes ($resultat) ;
   $entete = "<form action=\"./edite_classe.php\" method=\"post\" name=\"etat_".$num_onglet."\" id=\"etat_".$num_onglet."\">" ;
   $ligne = "<table border=\"0\" align=\"center\" cellspacing=\"0\" cellpadding=\"0\" bgcolor=\"".$l ["couleur_fond"]."\" style=\"border-collapse:collapse\"" ;
   If ($id_groupe == -1) { $ligne .= " id=\"bords_ext\"" ; } Else { $ligne .= " width=\"100%\"" ; }
   $ligne .= ">" ;
   If ($nombre_res > 0)
    {
     $table_disc [0][0] = 0 ;
     $ligne .= "<tr>" ;
     $ligne .= "<td colspan=\"2\"><a href=\"javascript:ouvrefenetre('./imp_struct_peda.php?fenetre=1&id_classe=-".$id_classe."',400,500)\">" ;
     $ligne .= "<img src=\"../images/imprimante.png\" border=\"0\" title=\"Impression de la structure p&eacute;dagogique.\" alt=\"Imprimer.\"></a></td>" ;
     $ligne .= "<td colspan=\"8\" align=\"center\"><b>&nbsp;".$intitule_disc [0] ; If (SQL_nbr_lignes ($resultat) > 1) { $ligne .= "s" ; }
     $ligne .= "&nbsp;d&eacute;j&agrave;&nbsp;pr&eacute;sente" ; If (SQL_nbr_lignes ($resultat) > 1) { $ligne .= "s" ; }
     $ligne .= "&nbsp;</b></td>" ;
     $ligne .= "</tr>" ;
     $ligne .= "<tr bgcolor=\"".$l ["lien"]."\">" ;
     If ($nombre_res > 1)
      {
       $csm = ordre_groupement_classe ($id_classe, $id_groupe, $millesime) ;
       $ligne .= "<td bgcolor=\"".$l ["couleur_fond"]."\" colspan=\"2\">" ;
       $ligne .= "<a href=\"javascript:ouvrefenetre('./classement.php?fenetre=1&id_classe=".$id_classe."&onglet=".$num_onglet."&id_groupe=".$id_groupe."',400,700)\" title=\"&Eacute;dition du classement disciplines...\">" ;
       $ligne .= "<img src=\"../images/classement" ; If ($csm == 1) { $ligne .= "_ok" ; }
       $ligne .= ".png\" border=\"0\"></a></td>" ;
       $ligne .= "<td>" ;
      }
     Else { $ligne .= "<td colspan=\"3\">" ; $csm = 0 ; }
     $ligne .= "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".$intitule_disc [0]."</td>" ;
     $ligne .= "<td align=\"center\">&nbsp;S.Disc.&nbsp;</td>" ;
     $ligne .= "<td align=\"center\">&nbsp;Opt.&nbsp;</td>" ;
     $ligne .= "<td align=\"center\">&nbsp;Gp.&nbsp;</td>" ;
     $ligne .= "<td align=\"center\">&nbsp;Code&nbsp;Gp.&nbsp;</td>" ;
     $ligne .= "<td align=\"center\">&nbsp;Coeff.&nbsp;</td>" ;
     $ligne .= "<td align=\"left\">&nbsp;Enseignant&nbsp;</td>" ;
     $ligne .= "<td align=\"center\">&nbsp;Nbr&nbsp;Contr&ocirc;le&nbsp;</td>" ;
     $ligne .= "<td></td>" ;
     $ligne .= "</tr>" ;
     For ($i = 0 ; $i < $nombre_res ; $i++)
      {
       $lgn = SQL_tableau_associatif ($resultat, "") ;
       $ok_disc = 0 ;
       For ($j = 1 ; $j <= $table_disc [0][0] ; $j++)
        {
         If (($table_disc [$j][0] == $lgn ["id_service_prof"]) And ($table_disc [$j][1] == $lgn ["id_service_classe"])) { $ok_disc = 1 ; }
        }
       If ($ok_disc == 0)
        {
         $table_disc [0][0]++ ;
         $table_disc [$table_disc [0][0]][0] = $lgn ["id_service_prof"] ;
         $table_disc [$table_disc [0][0]][1] = $lgn ["id_service_classe"] ;
	 $id_css = "entree_" ;
         $ligne .= "<tr" ; If ($table_disc [0][0]%2 == 0) { $ligne .= " bgcolor=\"".$l ["nom"]."\"" ; $id_css .= "surbrillance" ; } Else { $id_css .= "normale" ; }
         $ligne .= ">" ;
         
         // Discipline
         $ligne .= "<td valign=\"middle\"><a href=\"./modif_discipline.php?sp=".$lgn ["id_service_prof"]."&retour=edite_classe.php&id_classe=".$id_classe."&onglet=".$i."\">" ;
	 $ligne .= "<img src=\"../images/edition.png\" border=\"0\" title=\"Changer '".$lgn ["nom_court"]."'...\"></a></td>" ;
	 $ligne .= "<td valign=\"middle\"><a href=\"./gestion_alias.php?sp=".$lgn ["id_service_prof"]."&retour=edite_classe.php&id_classe=".$id_classe."&onglet=".$i."\">" ;
	 $ligne .= "<img src=\"../images/alias.png\" border=\"0\" title=\"Ajouter/enlever un enseignant pour '".$lgn ["nom_court"]."'...\"></a></td>" ;
         $ligne .= "<td valign=\"middle\">" ;
	 If ($csm == 1) { $ligne .= "&nbsp;<b>".($i+1)."</b>-" ; }
         Switch ($affiche_numero)
          {
 	   Case  0 : $ligne .= "<font size=\"-6\">(".$lgn ["id_service_prof"].")</font>" ; Break ;
 	   Case  1 : $ligne .= "<font size=\"-6\">".($i+1)."</font>-" ; Break ;
 	   Default : Break ;
 	  }
         $ligne .= "&nbsp;".Str_Replace (" ", "&nbsp;", $lgn ["nom_court"])."&nbsp;</td>" ;
     
         // Sous-discipline
         $sous_disc = SQL_commande ("SELECT * FROM sous_disciplines ORDER BY nom", $id_sql) ;
	 $nbr_sous_disc = SQL_nbr_lignes ($sous_disc) ;
         $ligne .= "<td align=\"center\"><select name=\"id_sous_disc_".$table_disc [0][0]."\" id=\"".$id_css."\"><option value=\"0\"></option>" ;
         For ($j = 0 ; $j < $nbr_sous_disc ; $j++)
          {
           $sd = SQL_tableau_associatif ($sous_disc, "") ;
           $ligne .= "<option value=\"".$sd ["id_sous_discipline"]."\"" ; If ($sd ["id_sous_discipline"] == $lgn ["sous_discipline"]) { $ligne .= " selected" ; }
           $ligne .= ">".$sd ["nom"]."</option>" ;
          }
         $ligne .= "</select></td>" ;
         
         // traduction du flag optionnelle
         $ligne .= "<td align=\"center\"><input type=\"checkbox\" name=\"opt_".$table_disc [0][0]."\" value=\"1\"" ;
         If ($lgn ["optionnelle"] == 1) { $ligne .= " checked" ; }
         $ligne .= " id=\"".$id_css."\"></td>" ;
       
         // traduction du groupe
         $ligne .= "<td align=\"center\"><input type=\"checkbox\" name=\"grp_".$table_disc [0][0]."\" value=\"1\"" ;
         If ($lgn ["groupe"] == 1) { $ligne .= " checked" ; }
         $ligne .= " id=\"".$id_css."\"></td>" ;
         
         // Code Groupe
         If ($lgn ["groupe_classe"] > 0)
          {
           If ($lgn ["groupe"] == 1)
            {
             // ok tout va bien
             $res = SQL_commande ("SELECT * FROM groupes_classe WHERE id_groupe_classe='".$lgn ["groupe_classe"]."' LIMIT 1", $id_sql) ;
             $r = SQL_tableau_associatif ($res, "") ;
             $code_groupe = $r ["code_groupe"] ;
            }
           Else
            {
             // Incoherence car numero de groupe declare sans l'avoir coche : a eliminer
             $ok_1 = SQL_commande ("DELETE FROM groupes_classe WHERE id_groupe_classe='".$lgn ["groupe_classe"]."' LIMIT 1", $id_sql) ;
             $code_groupe = "" ;
             $lgn ["groupe"] = 0 ;
            }
          }
         Else
          {
           If ($lgn ["groupe"] == 0) { $code_groupe = "" ; }
           Else
            {
             // Il manque un groupe
             $lgn ["groupe"] = 1 ;
             $ok_p = SQL_commande ("SELECT nom,prenom FROM utilisateurs WHERE id_utilisateur='".$lgn ["professeur"]."' AND millesime='".$millesime."'", $id_sql) ;
             $r = SQL_ligne_suivante ($ok_p) ;
             $code_groupe = SubStr (SubStr ($r [0].$r [1], 0, 3).$lgn ["id_service_classe"], 0, 8) ;
             $code_groupe = filtrage ($code_groupe) ;
             // Creation d'un nouveau groupe
             $ok_p = SQL_commande ("SELECT nom_bref FROM classes WHERE id_classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
             $rp = SQL_ligne_suivante ($ok_p) ;
             $ok_d = SQL_commande ("SELECT code FROM disciplines WHERE id_discipline='".$lgn ["discipline"]."' AND millesime='".$millesime."'", $id_sql) ;
             $rd = SQL_ligne_suivante ($ok_d) ;
             $ok = SQL_commande ("INSERT INTO groupes_classe (code_groupe,classe,code_classe,discipline,code_disc,service_classe,millesime)
                                  VALUES ('".$code_groupe."','".$id_classe."','".$rp [0]."','".$lgn ["discipline"]."','".$rd [0]."','".$lgn ["id_service_classe"]."','".$millesime."')", $id_sql) ;
             $ok = SQL_commande ("SELECT MAX(id_groupe_classe) FROM groupes_classe WHERE code_groupe='".$code_groupe."' AND classe='".$id_classe."'
                                   AND discipline='".$lgn ["discipline"]."' AND service_classe='".$lgn ["id_service_classe"]."' AND millesime='".$millesime."'", $id_sql) ;
             $ok_rd = SQL_ligne_suivante ($ok) ;
             $ok = SQL_commande ("UPDATE services_prof SET groupe_classe='".$ok_rd [0]."' WHERE id_service_prof='".$lgn ["id_service_prof"]."' AND millesime='".$millesime."' LIMIT 1", $id_sql) ;
             $lgn ["groupe_classe"] = $ok_rd [0] ;
            }
          }
         $ligne .= "<td align=\"center\"><input type=\"text\" name=\"code_grp_".$table_disc [0][0]."\" value=\"".$code_groupe."\" size=\"9\" maxlength=\"15\" id=\"".$id_css."\"></td>" ;
       
         // Coefficient
         $ligne .= "<td align=\"center\"><input type=\"text\" name=\"coeff_".$table_disc [0][0]."\" value=\"".Str_Replace (".", ",", $lgn ["coefficient"])."\" size=\"4\" maxlength=\"7\" id=\"".$id_css."\" style=\"text-align:right\"></td>" ;
      
         // Enseignants
         $ligne .= "<td>" ;
         // Verification de l'alias
         If ($lgn ["professeur"] < 0)
          {
           $ok = SQL_commande ("SELECT id_utilisateur FROM groupes_alias WHERE numero='1' AND id_alias='".(-$lgn ["professeur"])."' AND millesime='".$millesime."' LIMIT 1", $id_sql) ;
           If (SQL_nbr_lignes ($ok) == 1)
            {
             $ll = SQL_ligne_suivante ($ok) ;
             $ok_u = SQL_commande ("SELECT id_utilisateur FROM utilisateurs WHERE id_utilisateur='".$ll [0]."' LIMIT 1", $id_sql) ;
             If (SQL_nbr_lignes ($ok_u) != 1) { $lgn ["professeur"] = 0 ; }
            }
           Else { $lgn ["professeur"] = 0 ; }
          }
         If ($lgn ["professeur"] >= 0)
          {
           If ($lgn ["professeur"] == 0)
            {
             $nbr_controles = SQL_commande ("SELECT COUNT(id_controle) FROM controles WHERE service_prof='".$lgn ["id_service_prof"]."' AND millesime='".$millesime."' AND professeur!='0'", $id_sql) ;
             $lc = SQL_ligne_suivante ($nbr_controles) ;
             If ($lc [0] != 0)
              {
               $id_prof = SQL_commande ("SELECT professeur FROM controles WHERE service_prof='".$lgn ["id_service_prof"]."' AND millesime='".$millesime."' AND professeur!='0' LIMIT 1", $id_sql) ;
               $idp = SQL_ligne_suivante ($id_prof) ;
               $lgn ["professeur"] = $idp [0] ;
               $ok = SQL_commande ("UPDATE services_prof SET professeur='".$idp [0]."' WHERE id_service_prof='".$id_service_prof."' LIMIT 1", $id_sql) ;
              }
            }
           $res = SQL_commande ("SELECT * FROM utilisateurs WHERE droits='".$droit_prof."' AND millesime='".$millesime."' ORDER BY nom,prenom,login", $id_sql) ;
	   $nbr_res = SQL_nbr_lignes ($res) ;
           $ligne .= "<select name=\"id_prof_".$table_disc [0][0]."\" id=\"".$id_css."\"><option value=\"0\"></option>" ;
           For ($j = 0 ; $j < $nbr_res ; $j++)
            {
             $r = SQL_tableau_associatif ($res, "") ;
             $ligne .= "<option value=\"".$r ["id_utilisateur"]."\"" ;
             If ($r ["id_utilisateur"] == $lgn ["professeur"]) { $ligne .= " selected" ; $nom_prof = $r ["nom"]." ".$r ["prenom"] ; }
             $ligne .= ">".$r ["nom"]."&nbsp;".$r ["prenom"]."</option>" ;
            }
           $ligne .= "</select>" ;
          }
         Else
          {
           // Verification de l'alias
           $ligne .= "<input type=\"hidden\" name=\"id_prof_".$table_disc [0][0]."\" value=\"".$lgn ["professeur"]."\">" ;
           $ligne .= "<a href=\"./gestion_alias.php?sp=".$lgn ["id_service_prof"]."&retour=edite_classe.php&id_classe=".$id_classe."&onglet=".$num_onglet."\" title=\"" ;
	   $pp = alias_liste_enseignants (-$lgn ["professeur"]) ;
	   For ($j = 1 ; $j <= $pp [0][0] ; $j++)
	    {
	     If ($j > 1) { $ligne .= "," ; }
	     $ligne .= $pp [$j][3]." ".$pp [$j][4] ;
	    }
	   $ligne .= "\">&nbsp;&Eacute;quipe&nbsp;d'enseignants&nbsp;</a>" ;
          }
         $ligne .= "&nbsp;</td>" ;
   
         // Nombre de controle
         $nbr_notes = SQL_commande ("SELECT COUNT(id_note) FROM controles c,notes n WHERE c.service_prof='".$lgn ["id_service_prof"]."' AND c.millesime='".$millesime."' AND n.controle=c.id_controle", $id_sql) ;
         $nn = SQL_ligne_suivante ($nbr_notes) ;
         $nbr_controles = SQL_commande ("SELECT COUNT(id_controle) FROM controles WHERE service_prof='".$lgn ["id_service_prof"]."' AND millesime='".$millesime."' AND professeur!='0'", $id_sql) ;
         $lc = SQL_ligne_suivante ($nbr_controles) ;
         If ($lc [0] == 0)
          {
           If ($nn [0] > 0) { $lc [0] = "1&nbsp;!" ; $commentaires = "Il n'y a pas de contr&ocirc;les mais seulement des notes." ; }
           Else { $commentaires = "Il n'y a pas de contr&ocirc;les." ; }
          }
         Else { $commentaires = "Attention, si vous effacez ce service, vous effacerez aussi les contr&ocirc;les d&eacute;j&agrave; entr&eacute;s." ; }
         $ligne .= "<td align=\"right\"><font title=\"".$commentaires."\"" ; If ($lc [0] > 0) { $ligne .= " color=\"red\"><b" ; }
         $ligne .= ">&nbsp;".$lc [0]."&nbsp;" ; If ($lc [0] > 0) { $ligne .= " </b>" ; }
         $ligne .= "</font></td>" ;
     
         // Action
         // A faire -> Activation d'une securite pour l'effacement (parametrable)
         //
         $ligne .= "<td align=\"center\"><input type=\"checkbox\" name=\"eff_sp_".$table_disc [0][0]."\" onClick=\"javascript:selection(this,".$lgn ["id_service_prof"].")\" id=\"".$id_css."\"></td>" ;
         $ligne .= "</tr>" ;
         $ligne .= "<input type=\"hidden\" name=\"id_sc_".$table_disc [0][0]."\" value=\"".$lgn ["id_service_classe"]."\">" ;
         $ligne .= "<input type=\"hidden\" name=\"id_sp_".$table_disc [0][0]."\" value=\"".$lgn ["id_service_prof"]."\">" ;
         $ligne .= "<input type=\"hidden\" name=\"id_grp_cl_".$table_disc [0][0]."\" value=\"".$lgn ["groupe_classe"]."\">" ;
         $ligne .= "<input type=\"hidden\" name=\"id_disc_".$table_disc [0][0]."\" value=\"".$lgn ["discipline"]."\">" ;
         $ligne .= "<input type=\"hidden\" name=\"v_opt_".$table_disc [0][0]."\" value=\"".$lgn ["optionnelle"]."\">" ;
         $ligne .= "<input type=\"hidden\" name=\"v_grp_".$table_disc [0][0]."\" value=\"".$lgn ["groupe"]."\">" ;
	 $ligne .= "<input type=\"hidden\" name=\"id_groupe\" value=\"".$id_groupe."\">" ;
        }
      }
 
     $id = restaure_configuration_defaut ("SYSTEME_PARAM","STRUCTURE_VS","GROUPE_".$id_classe,0) ;
     If ((($id == $id_groupe) Or ($id_groupe == -1)) And (($gestion [0] == 3) Or ($gestion [0] == 4)))
      {
       // Discipline vie scolaire
       $id_css = "entree_" ;
       $ligne .= "<tr" ; If ($table_disc [0][0]%2 == 1) { $ligne .= " bgcolor=\"".$l ["nom"]."\"" ; $id_css .= "surbrillance" ; } Else { $id_css .= "normale" ; }
       $ligne .= "><td colspan=\"2\"></td>" ;
       $ligne .= "<td colspan=\"5\">&nbsp;Vie&nbsp;Scolaire&nbsp;</td>" ;
       $ligne .= "<td align=\"center\"><input type=\"text\" name=\"coeff_vs\" value=\"".Str_Replace (".", ",", $lgn ["coefficient_vs"])."\" size=\"4\" maxlength=\"7\" id=\"".$id_css."\" style=\"text-align:right\"></td>" ;
       $ligne .= "<td>&nbsp;".nom_prenom_utilparid ($id_cpe, 3, 5, 0)."&nbsp;</td>" ;
       $ligne .= "<td colspan=\"2\"></td>" ;
       $ligne .= "</tr>" ;
      }
     $ligne .= "<tr>" ;
     $ligne .= "<td align=\"right\" colspan=\"7\">" ;
     $ligne .= "<input type=\"hidden\" name=\"nbr\" value=\"".$table_disc [0][0]."\">" ;
     $ligne .= "<input type=\"hidden\" name=\"code\" value=\"".$_SESSION ["code"]."\">" ;
     $ligne .= "<input type=\"hidden\" name=\"id_classe\" value=\"".$id_classe."\">" ;
     $ligne .= "<input type=\"hidden\" name=\"onglet\" value=\"".$num_onglet."\">" ;
     $ligne .= "<input type=\"hidden\" name=\"action\" value=\"5\">" ;
     $ligne .= "<input type=\"image\" src=\"../images/valider.png\" name=\"requete\" value=\"Valider\" border=\"0\">" ;
     $ligne .= "</td>" ;
     $ligne .= "<td align=\"right\" colspan=\"4\">" ;
     $ligne .= "Pour&nbsp;la&nbsp;s&eacute;lection&nbsp;->&nbsp;<a onClick=\"javascript:validation('etat_".$num_onglet."')\">" ;
     $ligne .= "<img src=\"../images/effacer.png\" border=\"0\"></a>" ;
     $ligne .= "</td>" ;
     $ligne .= "</tr></table>" ;
     $ligne = $entete.$ligne."</form>" ;
    }
   Else
    {
     If ((($id == $id_groupe) Or ($id_groupe == -1)) And (($gestion [0] == 3) Or ($gestion [0] == 4)))
      {
       // Uniquement discipline vie scolaire
       $resultat = SQL_commande ("SELECT coefficient_vs FROM classes WHERE id_classe='".$id_classe."' LIMIT 1", $id_sql) ;
       $lgn = SQL_tableau_associatif ($resultat, "") ;
       $ligne .= "<tr><td colspan=\"2\" align=\"center\"><b>&nbsp;".$intitule_disc [0]."&nbsp;d&eacute;j&agrave;&nbsp;pr&eacute;sent(e)&nbsp;</b></td></tr>" ;
       $ligne .= "<tr bgcolor=\"".$l ["lien"]."\"><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".$intitule_disc [0]."</td><td align=\"center\">&nbsp;Coeff.&nbsp;</td><td align=\"center\">CPE</td></tr>" ;
       $ligne .= "<tr><td>Vie&nbsp;Scolaire&nbsp;</td>" ;
       $ligne .= "<td align=\"center\"><input type=\"text\" name=\"coeff_vs\" value=\"".Str_Replace (".", ",", $lgn ["coefficient_vs"])."\" size=\"4\" maxlength=\"7\" id=\"entree_normale\" style=\"text-align:right\"></td>" ;
       $ligne .= "<td>&nbsp;".nom_prenom_utilparid ($id_cpe, 3, 5, 0)."&nbsp;</td>" ;
       $ligne .= "</tr><tr>" ;
       $ligne .= "<td align=\"center\" colspan=\"3\">" ;
       $ligne .= "<input type=\"hidden\" name=\"nbr_disc\" value=\"0\">" ;
       $ligne .= "<input type=\"hidden\" name=\"code\" value=\"".$_SESSION ["code"]."\">" ;
       $ligne .= "<input type=\"hidden\" name=\"id_classe\" value=\"".$id_classe."\">" ;
       $ligne .= "<input type=\"hidden\" name=\"onglet\" value=\"".$num_onglet."\">" ;
       $ligne .= "<input type=\"hidden\" name=\"action\" value=\"5\">" ;
       $ligne .= "<input type=\"image\" src=\"../images/valider.png\" name=\"requete\" value=\"Valider\" border=\"0\">" ;
       $ligne .= "</td></tr></table>" ;
       $ligne = $entete.$ligne."</form>" ;
      }
     Else { $ligne .= "<tr><td align=\"center\"><br>&nbsp;Aucun&nbsp;service&nbsp;d&eacute;clar&eacute;&nbsp;!&nbsp;<br>&nbsp;</td></tr></table>" ; }
    }
   Return $ligne ;
  }
 
 $id_classe = var_courante ("id_classe", 0, 0) ;
 $action = var_courante ("action", 0, null) ;
 $groupe_cert = var_courante ("groupe_cert", 0, null) ;
 $modif_discipline = var_courante ("modif_discipline", 0, null) ;
 $millesime = millesime (0) ;
 $intitule_page = intitule_titre_affichage ("CLASSE", "1|Classe|Classes", $millesime) ;
 $intitule_groupe_disc = intitule_titre_affichage ("GROUPE_DISC", "0|Groupe de disciplines|Groupes de disciplines", $millesime) ;
 $intitule_disc = intitule_titre_affichage ("DISCIPLINE", "1|Discipline|Disciplines", $millesime) ;
 
 // Gestion
 $resultats = SQL_commande ("SELECT e.bulletin_cpe FROM etablissements e,classes c WHERE c.id_classe='".$id_classe."' AND c.etablissement=e.id_etablissement AND c.millesime='".$millesime."' LIMIT 1", $id_sql) ;
 $gestion = SQL_ligne_suivante ($resultats) ;
 
 If (IsSet ($action))
  {
   Switch ($action)
    {
     Case 1 : // Ajouter/Modifier un profil classe
              $etablissement = var_courante ("id_etab", 0, 0) ;
	      $nom = var_courante ("nom", 0, "") ;
              $nom_bref = var_courante ("nom_bref", 0, "") ;
	      $id_type_niveau = var_courante ("id_type_niveau", 0, 0) ;
              $id_prof_princ = var_courante ("id_prof_princ", 0, 0) ;
              $cpe = var_courante ("id_cpe", 0, 0) ;
              $type_saisie_cpe = var_courante ("type_saisie_cpe", 0, -2) ;
              $periode = var_courante ("periode", 0, 0) ;
              $signature = var_courante ("id_signature", 0, 0) ;
              
              $nom = filtrage ($nom) ;
              $nom_bref = filtrage ($nom_bref) ;
              If ($id_prof_princ > 0)
               {
	            $pp = SQL_commande ("SELECT id_utilisateur,numen FROM utilisateurs WHERE id_utilisateur='".$id_prof_princ."' LIMIT 1", $id_sql) ;
                $prof = SQL_ligne_suivante ($pp) ;
               }
              Else
               {
               	$prof [0] = 0 ;
               	$prof [1] = "" ;
               }
              If ($id_classe == 0)
               {
                // Ajouter une classe
                $ok = SQL_commande ("INSERT INTO classes (nom,nom_bref,id_prof_princ,numen_prof_princ,etablissement,cpe,type_saisie_cpe,periode,num_periode,signature,id_type_niveau,millesime)
                                     VALUES ('".$nom."','".$nom_bref."','".$prof [0]."','".$prof [1]."','".$etablissement."','".$cpe."','".$type_saisie_cpe."','".$periode."',
				                     '1','".$signature."','".$id_type_niveau."','".$millesime."')", $id_sql) ;
                $res = SQL_commande ("SELECT id_classe FROM classes WHERE nom='".$nom."' AND nom_bref='".$nom_bref."' AND id_prof_princ='".$prof [0]."'
		                              AND etablissement='".$etablissement."' AND cpe='".$cpe."' AND type_saisie_cpe='".$type_saisie_cpe."'
				                   AND periode='".$periode."' AND num_periode='1' AND signature='".$signature."' AND id_type_niveau='".$id_type_niveau."' AND millesime='".$millesime."' LIMIT 1", $id_sql) ;
                $idc = SQL_ligne_suivante ($res) ;
                $id_classe = $idc [0] ;
               } 
              ElseIf (($nom != "") And ($nom_bref != "") And ($etablissement > 0) And ($periode > 0) And ($cpe >= 0))
               {
                // Maj d'une classe existante
                $ok = SQL_commande ("UPDATE classes SET nom='".$nom."',nom_bref='".$nom_bref."',id_prof_princ='".$prof [0]."',numen_prof_princ='".$prof [1]."',
		                                                etablissement='".$etablissement."',periode='".$periode."',cpe='".$cpe."',type_saisie_cpe='".$type_saisie_cpe."',
					                              signature='".$signature."',id_type_niveau='".$id_type_niveau."' WHERE id_classe='".$id_classe."' LIMIT 1", $id_sql) ;
                // Maj des tables pour le code classe
                $ok = SQL_commande ("UPDATE appreciations SET code_classe='".$nom_bref."' WHERE classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
                $ok = SQL_commande ("UPDATE autorisations SET code_classe='".$nom_bref."' WHERE classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
                $ok = SQL_commande ("UPDATE controles SET code_classe='".$nom_bref."' WHERE classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
                $ok = SQL_commande ("UPDATE groupes_classe SET code_classe='".$nom_bref."' WHERE classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
                $ok = SQL_commande ("UPDATE periodes_classe SET code_classe='".$nom_bref."' WHERE classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
                $ok = SQL_commande ("UPDATE services_classe SET code_classe='".$nom_bref."' WHERE classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
                $ok = SQL_commande ("UPDATE services_prof SET code_classe='".$nom_bref."' WHERE classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
                $ok = SQL_commande ("UPDATE sous_matieres SET code_classe='".$nom_bref."' WHERE classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
                // MAJ des tables pour le CPE
                $cpe = SQL_commande ("SELECT numen FROM utilisateurs WHERE id_utilisateur='".$cpe."' LIMIT 1", $id_sql) ;
                $vs = SQL_ligne_suivante ($cpe) ;
                $eleves = SQL_commande ("SELECT id_eleve FROM eleves WHERE classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
                For ($i = 0 ; $i < SQL_nbr_lignes ($eleves) ; $i++)
                 {
         	      $el = SQL_ligne_suivante ($eleves) ;
         	      $ok = SQL_commande ("UPDATE vie_scolaire SET cpe='".$cpe."',numen_cpe='".$vs [0]."' WHERE eleve='".$el [0]."' AND millesime='".$millesime."'", $id_sql) ;
         	     }
                // MAJ periodes
                $n_periodes = SQL_commande ("SELECT nombre FROM types_periode WHERE id_type_periode='".$periode."' LIMIT 1", $id_sql) ;
                $np = SQL_ligne_suivante ($n_periodes) ;
	   	        $np_actuelles = SQL_commande ("SELECT COUNT(id_periode_classe) FROM periodes_classe WHERE classe='".$id_classe."'", $id_sql) ;
		        $nbr_np = SQL_ligne_suivante ($np_actuelles) ;
		        If ($nbr_np [0] > $np [0])
		         {
		          // On enleve car en trop (passage de trimestre a semestre par exemple)
                  $ok = SQL_commande ("DELETE FROM periodes_classe WHERE numero>".$np [0]." AND classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
		         }
		        Else
		         {
		          // On ajoute car pas assez (passage de semestre en trimestre par exemple)
		          For ($i = $nbr_np [0]+1 ; $i <= $np [0] ; $i++)
		           {
		            $ok = SQL_commande ("INSERT INTO periodes_classe (numero,debut,fin,classe,code_classe,duree_vs,duree_secr,duree_dir,millesime) VALUES
                                         (".$i.",'".$millesime."-00-00','".$millesime."-00-00','".$id_classe."','".$nom_bref."',1,1,0,'".$millesime."')", $id_sql) ;
		           }
		         }
               }
	      Break ;
     Case 2 : // Ajouter une discipline
              $id_discipline = var_courante ("id_disc", 0, 0) ;
              If ($id_discipline > 0)
               {
		$id_groupe_disc = var_courante ("id_groupe_disc", 0, 0) ;
		$id_sous_discipline = var_courante ("id_sous_disc", 0, 0) ;
                $option = var_courante ("option", 0, 0) ;
                $groupe = var_courante ("groupe", 0, 0) ;
                $coefficient = var_courante ("coeff", 0, 0) ;
		$id_professeur = var_courante ("id_prof", 0, 0) ;
		
                If ($option) { $option = 1 ; } Else { $option = 0 ; }
                If ($groupe) { $groupe = 1 ; } Else { $groupe = 0 ; }
                $res = SQL_commande ("SELECT numen,nom,prenom FROM utilisateurs WHERE id_utilisateur='".$id_professeur."' LIMIT 1", $id_sql) ;
                $prof = SQL_ligne_suivante ($res) ;
                $res = SQL_commande ("SELECT nom_bref FROM classes WHERE id_classe='".$id_classe."' LIMIT 1", $id_sql) ;
                $c = SQL_ligne_suivante ($res) ;
                $res = SQL_commande ("SELECT code FROM disciplines WHERE id_discipline='".$id_discipline."' LIMIT 1", $id_sql) ;
                $d = SQL_ligne_suivante ($res) ;
                // Insertion nouveau service
                $ok = SQL_commande ("INSERT INTO services_classe (classe,code_classe,discipline,code_disc,optionnelle,groupe,millesime)
                                     VALUES ('".$id_classe."','".$c [0]."','".$id_discipline."','".$d [0]."','".$option."','".$groupe."','".$millesime."')", $id_sql) ;
                $res = SQL_commande ("SELECT MAX(id_service_classe) FROM services_classe WHERE classe='".$id_classe."' AND code_classe='".$c [0]."'
		                         AND discipline='".$id_discipline."' AND code_disc='".$d [0]."' AND optionnelle='".$option."' AND groupe='".$groupe."'
					 AND millesime='".$millesime."' LIMIT 1", $id_sql) ;
                //$res = SQL_commande ("SELECT LAST_INSERT_ID() FROM services_classe", $id_sql) ;
                $cl = SQL_ligne_suivante ($res) ;
                // Insertion nouveau groupe
                If ($groupe == 1)
                 {
	          // Fabrication du code groupe si oublie
                  $code_groupe = var_courante ("code_groupe", 0, "") ;
	          If ($code_groupe == "") { $code_groupe = SubStr (SubStr ($prof [1].$prof [2], 0, 3).$cl [0], 0, 8) ; }
	          $code_groupe = filtrage ($code_groupe) ;
                  $ok = SQL_commande ("INSERT INTO groupes_classe (code_groupe,classe,code_classe,discipline,code_disc,service_classe,millesime)
                                       VALUES ('".$code_groupe."','".$id_classe."','".$c [0]."','".$id_discipline."','".$d [0]."','".$cl [0]."','".$millesime."')", $id_sql) ;
                  $res = SQL_commande ("SELECT MAX(id_groupe_classe) FROM groupes_classe WHERE code_groupe='".$code_groupe."' AND classe='".$id_classe."'
		                           AND discipline='".$id_discipline."' AND service_classe='".$cl [0]."' AND millesime='".$millesime."' LIMIT 1", $id_sql) ;
	          $gp = SQL_ligne_suivante ($res) ;
	         }
                Else
                 { $id_groupe = 0 ; $gp [0] = 0 ; }
                // Insertion du service prof
                $ok = SQL_commande ("INSERT INTO services_prof (professeur,numen_prof,classe,code_classe,discipline,code_disc,sous_discipline,service_classe,groupe_classe,coefficient,millesime)
                                     VALUES ('".$id_professeur."','".$prof [0]."','".$id_classe."','".$c [0]."','".$id_discipline."','".$d [0]."','".$id_sous_discipline."','".$cl [0]."',
		                             '".$gp [0]."','".Str_Replace (',', '.', filtrage ($coefficient))."','".$millesime."')", $id_sql) ;
		$res = SQL_commande ("SELECT MAX(id_service_prof) FROM services_prof
                                       WHERE professeur='".$id_professeur."' AND numen_prof='".$prof [0]."' AND classe='".$id_classe."' AND code_classe='".$c [0]."'
			                 AND discipline='".$id_discipline."' AND code_disc='".$d [0]."' AND sous_discipline='".$id_sous_discipline."'
				         AND service_classe='".$cl [0]."' AND groupe_classe='".$gp [0]."' AND coefficient='".filtrage ($coefficient)."' AND millesime='".$millesime."' LIMIT 1", $id_sql) ;
		$sp = SQL_ligne_suivante ($res) ;
                // Verification du classement pour l'ajouter a la fin
                $num_max = ordre_nombre_service_classe_par_groupement ($id_classe, $id_groupe_disc, $millesime) ;
                If ($num_max != 0)
                 {
         	  $ok = SQL_commande ("INSERT INTO classement (id_classe,id_service_classe,numero,texte,millesime) VALUES ('".$id_classe."','".$cl [0]."','".($num_max+1)."','','".$millesime."')", $id_sql) ;
         	 }
		// Insertion nouvelle attribution groupe de disciplines
		If ($id_groupe_disc != 0)
                 {
         	  $ok = SQL_commande ("INSERT INTO groupement_disciplines_attribution (id_groupement_discipline_definition,id_service_prof,millesime) VALUES ('".$id_groupe_disc."','".$sp [0]."','".$millesime."')", $id_sql) ;
         	 }
               }
	      Break ;
     Case 3 : // Attribution discipline -> Groupe de disciplines
              Include ("../../include/garennes_gestion_classe.php") ;
              $nbr = var_courante ("nbr", 0, 0) ;
              If (($id_classe > 0) And (($nbr > 0) Or (($nbr ==0) And (($gestion [0] == 3) Or ($gestion [0] == 4)))))
               {
	        For ($i = 1 ; $i <= $nbr ; $i++)
		 {
		  $id_sp = var_courante ("id_sp_".$i, 0, 0) ;
		  $n_att = var_courante ("att_cl_".$i, 0, 0) ;
		  $a_att = var_courante ("att_cl_old_".$i, 0, 0) ;
		  If (($id_sp > 0) And ($n_att != $a_att)) { $ok = change_groupe_service_prof ($id_classe, $id_sp, $a_att, $n_att, $millesime, $id_sql) ; }
		 }
		If (($gestion [0] == 3) Or ($gestion [0] == 4))
		 {
		  $att_vs = var_courante ("att_vs", 0, 0) ;
		  sauvegarde_configuration ("SYSTEME_PARAM", "STRUCTURE_VS", "GROUPE_".$id_classe, $att_vs) ;
		 }
	       }
	      $mess = 2 ;
              Break ;
     Case 4 : // Effacement d'une ou plusieurs discipline(s)
              $nbr = var_courante ("nbr", 0, 0) ;
              If (($id_classe > 0) And ($nbr > 0))
               {
	        Include ("../../include/garennes_gestion_classe.php") ;
		$id_groupe = var_courante ("id_groupe", 0, 0) ;
	        For ($i = 1 ; $i <= $nbr ; $i++)
		 {
		  $id_sp = var_courante ("eff_sp_".$i, 0, 0) ;
		  If ($id_sp > 0) { effacer_un_service_prof ($id_classe, $id_sp, $id_groupe, $millesime, $id_sql) ; }
		 }
	       }
	      $mess = 2 ;
              Break ;
     Case 5 : // Mise a jour des disciplines deja existantes si changement
              $maj_notes [0][0] = 0 ;
              $rapport = "" ;
              $nbr_disc = var_courante ("nbr", 0, 0) ;
              For ($i = 1 ; $i <= $nbr_disc ; $i++)
               {
                // Recuperation des parametres de la discipline
		$id_sous_discipline = var_courante ("id_sous_disc_".$i, 0, 0) ;
                $option = var_courante ("opt_".$i, 0, 0) ;
                $groupe = var_courante ("grp_".$i, 0, 0) ;
		$code_groupe = var_courante ("code_grp_".$i, 0, 0) ;
                $coefficient = var_courante ("coeff_".$i, 0, 0) ;
                $id_professeur = var_courante ("id_prof_".$i, 0, 0) ;
		$id_service_classe = var_courante ("id_sc_".$i, 0, 0) ;
                $id_service_prof = var_courante ("id_sp_".$i, 0, 0) ;
                $id_groupe_classe = var_courante ("id_grp_cl_".$i, 0, 0) ;
                $id_discipline = var_courante ("id_disc_".$i, 0, 0) ;
                $vieux_option = var_courante ("v_opt_".$i, 0, 0) ;
                $vieux_groupe = var_courante ("v_grp_".$i, 0, 0) ;
                
                $coefficient = Str_Replace (',', '.', filtrage ($coefficient)) ;
                If (!Is_Numeric ($coefficient)) { $coefficient = 1 ; }
                If ($id_professeur > 0)
                 {
                  $res = SQL_commande ("SELECT numen,nom,prenom FROM utilisateurs WHERE id_utilisateur='".$id_professeur."' LIMIT 1", $id_sql) ;
                  $prof = SQL_ligne_suivante ($res) ;
	         }
                Else { $prof [0] = "" ; } 
                $res = SQL_commande ("SELECT nom_bref,nom FROM classes WHERE id_classe='".$id_classe."' LIMIT 1", $id_sql) ;
                $c = SQL_ligne_suivante ($res) ;
                $res = SQL_commande ("SELECT code FROM disciplines WHERE id_discipline='".$id_discipline."' LIMIT 1", $id_sql) ;
                $d = SQL_ligne_suivante ($res) ;
                If (IsSet ($option)) { If ($option) { $option = 1 ; } Else { $option = 0 ; } } Else { $option = 0 ; }
                If (IsSet ($groupe)) { If ($groupe) { $groupe = 1 ; } Else { $groupe = 0 ; } } Else { $groupe = 0 ; }
                // ----- Gestion des groupes -----
                If ($code_groupe == "") { $code_groupe = SubStr (SubStr ($prof [1].$prof [2], 0, 3).$id_service_prof, 0, 8) ; }
                $code_groupe = filtrage ($code_groupe) ;
                If ($groupe == 1)
                 {
	          If ($vieux_groupe == 1)
	           {
	            // MAJ si existe
	            $ok = SQL_commande ("UPDATE groupes_classe SET code_groupe='".$code_groupe."',classe='".$id_classe."',code_classe='".$c [0]."',discipline='".$id_discipline."',code_disc='".$d [0]."',service_classe='".$id_service_classe."'
			                  WHERE id_groupe_classe='".$id_groupe_classe."' LIMIT 1", $id_sql) ;
                   }
                  Else
	           {
	            // Creation d'un nouveau groupe
	            $ok = SQL_commande ("INSERT INTO groupes_classe (code_groupe,classe,code_classe,discipline,code_disc,service_classe,millesime)
                                         VALUES ('".$code_groupe."','".$id_classe."','".$c [0]."','".$id_discipline."','".$d [0]."','".$id_service_classe."','".$millesime."')", $id_sql) ;
	            $res = SQL_commande ("SELECT MAX(id_groupe_classe) FROM groupes_classe WHERE code_groupe='".$code_groupe."' AND classe='".$id_classe."' AND discipline='".$id_discipline."' AND service_classe='".$id_service_classe."' AND millesime='".$millesime."'", $id_sql) ;
	            $gp = SQL_ligne_suivante ($res) ;
	            $id_groupe_classe = $gp [0] ;
	            // Existe-t-il des notes ?
	            $notes_groupe = SQL_commande ("SELECT id_controle FROM controles WHERE service_prof='".$id_service_prof."' AND millesime='".$millesime."' LIMIT 1", $id_sql) ;
	            If (SQL_nbr_lignes ($notes_groupe) == 1)
	             {
	              // Oui
	              // Est-ce une option ?
	              If (($vieux_option == 1) And ($option == 1))
	               {
	                // Oui -> Prendre tous les eleves de l'option et attribuer le groupe
	                $eleves = SQL_commande ("SELECT e.id_eleve,e.repere1,e.repere2 FROM eleves e,options_eleve o
	                                          WHERE e.classe='".$id_classe."' AND e.id_eleve=o.eleve AND o.discipline='".$id_discipline."' AND o.service_classe='".$id_service_classe."' AND e.millesime='".$millesime."'", $id_sql) ;
                       }
                      Else
	               {
	                // Non -> On attribut tous les eleves au groupe puisque c'etait une discipline obligatoire sans groupe
	                $eleves = SQL_commande ("SELECT id_eleve,repere1,repere2 FROM eleves WHERE classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
                       }
	              $nom_disc = SQL_commande ("SELECT code FROM disciplines WHERE id_discipline='".$id_discipline."' LIMIT 1", $id_sql) ;
	              $nd = SQL_ligne_suivante ($nom_disc) ;
	              
	              $requete = "" ;
	              For ($j = 0 ; $j < SQL_nbr_lignes ($eleves) ; $j++)
	               {
	                $el = SQL_ligne_suivante ($eleves, "") ;
	                If ($j > 0) { $requete .= "," ; }
	                $requete .= "('".$el [0]."','".$el [1]."','".$el [2]."','".$id_discipline."','".$nd [0]."','".$id_groupe_classe."','".$millesime."')" ;
                       }
                      $ok = SQL_commande ("INSERT INTO groupes_eleve (eleve,repere1,repere2,discipline,code_disc,groupe,millesime) VALUES ".$requete, $id_sql) ;
	             }
                    ajoute_verification ($id_professeur, $prof [2]." ".$prof [1]) ;
	           }
	          // Mise a jour du service classe
	          $ok = SQL_commande ("UPDATE services_classe SET groupe='".$groupe."' WHERE id_service_classe='".$id_service_classe."' LIMIT 1", $id_sql) ;
	          // Mise a jour du service prof
	          $ok = SQL_commande ("UPDATE services_prof SET groupe_classe='".$id_groupe_classe."' WHERE id_service_prof='".$id_service_prof."' LIMIT 1", $id_sql) ;
	         }
                Else
                 {
	          If ($vieux_groupe == 1)
	           {
	            // Verifie qu'il est seul
	            $ok = SQL_commande ("SELECT COUNT(id_service_prof) FROM services_prof WHERE groupe_classe='".$id_groupe_classe."' AND millesime='".$millesime."'", $id_sql) ;
	            $nbr = SQL_ligne_suivante ($ok) ;
	            If ($nbr [0] == 1)
	             {
	              // Efface l'ancien groupe
	              $ok = SQL_commande ("DELETE FROM groupes_classe WHERE id_groupe_classe='".$id_groupe_classe."' LIMIT 1", $id_sql) ;
	              // Efface l'appartenance eleve au groupe
	              $ok = SQL_commande ("DELETE FROM groupes_eleve WHERE groupe='".$id_groupe_classe."' AND millesime='".$millesime."'", $id_sql) ;
	             }
	            // Mise a jour du service classe
	            $ok = SQL_commande ("UPDATE services_classe SET groupe='0' WHERE id_service_classe='".$id_service_classe."' LIMIT 1", $id_sql) ;
	            // Mise a jour du service prof
	            $ok = SQL_commande ("UPDATE services_prof SET groupe_classe='0' WHERE id_service_prof='".$id_service_prof."' LIMIT 1", $id_sql) ;
	            ajoute_verification ($id_professeur, $prof [2]." ".$prof [1]) ;
	            $id_groupe_classe = 0 ;
	           }
	         }
                // ----- Gestion des options -----
                If ($option == 1)
                 {
	          // Option OK
	          If ($vieux_option == 0)
	           {
	            // On passe d'aucune option a une option
	            // Existe-t-il des notes ?
	            $notes_option = SQL_commande ("SELECT id_controle FROM controles WHERE service_prof='".$id_service_prof."' AND millesime='".$millesime."' LIMIT 1", $id_sql) ;
	            If (SQL_nbr_lignes ($notes_option) == 1)
	             {
	              // Oui
	              // Est-ce un groupe ?
	              If (($vieux_groupe == 1) And ($groupe == 1))
	               {
	                // Oui -> Prendre tous les eleves du groupe et attribuer l'option
	                $eleves = SQL_commande ("SELECT e.id_eleve,e.repere1,e.repere2 FROM eleves e,groupes_eleve g
	                                          WHERE e.classe='".$id_classe."' AND e.id_eleve=g.eleve AND g.discipline='".$id_discipline."' AND g.service_classe='".$id_service_classe."' AND e.millesime='".$millesime."'", $id_sql) ;
                       }
                      Else
	               {
	                // Non -> On attribut tous les eleves a l'option puisque c'etait une discipline obligatoire
	                $eleves = SQL_commande ("SELECT id_eleve,repere1,repere2 FROM eleves WHERE classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ;
                       }
	              $nom_disc = SQL_commande ("SELECT code FROM disciplines WHERE id_discipline='".$id_discipline."' LIMIT 1", $id_sql) ;
	              $nd = SQL_ligne_suivante ($nom_disc) ;
	              $requete = "" ;
	              For ($j = 0 ; $j < SQL_nbr_lignes ($eleves) ; $j++)
	               {
	                $el = SQL_ligne_suivante ($eleves, "") ;
	                If ($j > 0) { $requete .= "," ; }
	                $requete .= "('".$el [0]."','".$el [1]."','".$el [2]."','".$id_discipline."','".$nd [0]."','".$id_service_classe."','".$millesime."')" ;
                       }
                      $ok = SQL_commande ("INSERT INTO options_eleve (eleve,repere1,repere2,discipline,code_disc,service_classe,millesime) VALUES ".$requete, $id_sql) ;
	              ajoute_verification ($id_professeur, $prof [2]." ".$prof [1]) ;
	             }
                   }
	         }
                Else
                 {
	          // Pas d'option
	          If ($vieux_option == 1)
	           {
	            // On passe d'une option a aucune option
                    // Efface l'appartenance eleve a l'ancienne option
	            $ok = SQL_commande ("DELETE FROM options_eleve WHERE service_classe='".$id_service_classe."' AND millesime='".$millesime."'", $id_sql) ;
	            ajoute_verification ($id_professeur, $prof [2]." ".$prof [1]) ;
	           }
	         }
                $ok = SQL_commande ("UPDATE services_classe SET optionnelle='".$option."',groupe='".$groupe."' WHERE id_service_classe='".$id_service_classe."' LIMIT 1", $id_sql) ;
                $ok = SQL_commande ("UPDATE services_prof SET professeur='".$id_professeur."',numen_prof='".$prof [0]."',coefficient='".$coefficient."',sous_discipline='".$id_sous_discipline."'
		                      WHERE id_service_prof='".$id_service_prof."' LIMIT 1", $id_sql) ;
                If ($id_professeur > 0) { $ok = SQL_commande ("UPDATE controles SET professeur='".$id_professeur."' WHERE service_prof='".$id_service_prof."'", $id_sql) ; }
               }
              // Gestion
              $resultats = SQL_commande ("SELECT e.bulletin_cpe FROM etablissements e,classes c WHERE c.id_classe='".$id_classe."' AND c.etablissement=e.id_etablissement AND c.millesime='".$millesime."' LIMIT 1", $id_sql) ;
              $gestion = SQL_ligne_suivante ($resultats) ;
              // Gestion de la discipline Vie scolaire
              If (($gestion [0] == 3) Or ($gestion [0] == 4))
               {
                $coefficient_vs = var_courante ("coeff_vs", 0, 1) ;
                $coefficient_vs = Str_Replace (',', '.', filtrage ($coefficient_vs)) ;
                If (!Is_Numeric ($coefficient_vs)) { $coefficient_vs = 1 ; }
                $ok = SQL_commande ("UPDATE classes SET coefficient_vs='".$coefficient_vs."' WHERE id_classe='".$id_classe."' LIMIT 1", $id_sql) ;
               }
              // Verification de l'ensemble des notes si besoin
              If ($maj_notes [0][0] > 0)
               {
                Include ($_SESSION ["repertoire_config"]."/verifications.php") ;
                $mess = "" ;
                $rapport [0] = 1 ;
                $rapport [1] = "- V&eacute;rification des notes de ".$c [1]." (".$c [0].")\n" ;
                For ($i = 1 ; $i <= $maj_notes [0][0] ; $i++)
                 {
	          If (($i > 1) Or (($i == 1) And ($maj_notes [0][0] > 1))) { $rapport [1] .= "\n" ; }
	          $r = verification_notes_enseignant ($maj_notes [$i][0], $id_classe, 0) ;
	          $rapport [0] += (integer)$r [0] ;
	          $rapport [1] .= " - Enseignant ".$maj_notes [$i][1].$r [1] ;
                 }
               }
	      $mess = 2 ;
	      Break ;
    }
  }
 
 // Theme d'affichage
 $resultats = SQL_commande ("SELECT * FROM menus WHERE numero='".$droit_courant."' AND ordre='0' LIMIT 1", $id_sql) ;
 $l = SQL_tableau_associatif ($resultats, "") ;
 
 // Interface d'ajout d'un certificat (groupement de disciplines) en popup
 If (IsSet ($groupe_cert) And ($groupe_cert == 1))
  {
   $id_etab = var_courante ("id_etab", 0, null) ;
   If (IsSet ($id_etab) And ($id_etab > 0))
    {
     $modif = 0 ;
     $action = var_courante ("action", 0, null) ;
     If (IsSet ($action) And ($action > 0))
      {
       Switch ($action)
        {
         // Insertion d'un nom
         Case 1 : $position = var_courante ("position", 0, 0) ;
                  $nom_gd = var_courante ("nom_gd", 0, "Groupe ".$position) ;
		  $code_gd = var_courante ("code_gd", 0, "C".$position) ;
		  $credit_gd = var_courante ("credit_gd", 0, "") ;
		  $coefficient_gd = Str_Replace (",", ".", var_courante ("coefficient_gd", 0, "1.0")) ;
		  $resultats = SQL_commande ("SELECT id_groupement_discipline_definition FROM groupement_disciplines_definition WHERE id_classe='".$id_classe."' AND position>".$position." AND millesime='".$millesime."' ORDER BY position", $id_sql) ;
		  $position++ ;
		  $nbr = SQL_nbr_lignes ($resultats) ;
		  If ($nbr > 0)
		   {
	            For ($i = 1 ; $i <= $nbr ; $i++)
		     {
		      $ligne = SQL_ligne_suivante ($resultats) ;
		      $ok = SQL_commande ("UPDATE groupement_disciplines_definition SET position='".($i+$position)."' WHERE id_groupement_discipline_definition='".$ligne [0]."' LIMIT 1", $id_sql) ;
		     }
		   }
		  $ok = SQL_commande ("INSERT INTO groupement_disciplines_definition (id_classe,nom,code,credit,coefficient,position,millesime) VALUES
		                       ('".$id_classe."','".$nom_gd."','".$code_gd."','".$credit_gd."','".$coefficient_gd."','".$position."','".$millesime."')", $id_sql) ;
	          $maj = 1 ;
		  If (($position == 1) And ($nbr == 0)) { $ok = SQL_commande ("DELETE FROM classement WHERE id_classe='".$id_classe."' AND millesime='".$millesime."'", $id_sql) ; }
                  Break ;
         // Modifier un nom -> Debut
         Case 2 : $id = var_courante ("id", 0, Null) ;
	          If (IsSet ($id) And ($id > 0))
		   {
		    $resultat = SQL_commande ("SELECT id_groupement_discipline_definition,nom,code,credit,coefficient,position FROM groupement_disciplines_definition WHERE id_groupement_discipline_definition='".$id."' AND millesime='".$millesime."' LIMIT 1", $id_sql) ;
		    If (SQL_nbr_lignes ($resultat) == 1) { $groupe_discipline = SQL_ligne_suivante ($resultat) ; $modif = 1 ; } Else { $modif = 0 ; }
		   }
                  Break ;
         // Modifier un nom -> Fin
         Case 3 : $position = var_courante ("position", 0, 1) ;
                  $nom_gd = var_courante ("nom_gd", 0, "Groupe ".$position) ;
		  $code_gd = var_courante ("code_gd", 0, "C".$position) ;
		  $credit_gd = var_courante ("credit_gd", 0, "") ;
		  $coefficient_gd = Str_Replace (",", ".", var_courante ("coefficient_gd", 0, "1.0")) ;
		  $id = var_courante ("id", 0, Null) ;
		  //$nom_gd = conversion_ascii_html (filtrage_utf8 ($nom_gd)) ;
		  //$code_gd = conversion_ascii_html (filtrage_utf8 ($code_gd)) ;
	          If (IsSet ($id) And ($id > 0)) { $ok = SQL_commande ("UPDATE groupement_disciplines_definition SET nom='".$nom_gd."',code='".$code_gd."',credit='".$credit_gd."',coefficient='".$coefficient_gd."' WHERE id_groupement_discipline_definition='".$id."' LIMIT 1", $id_sql) ; }
		  $modif = 0 ;
		  $maj = 1 ;
                  Break ;
         // Supprimer un nom
         Case 4 : $id = var_courante ("id", 0, Null) ;
	          If (IsSet ($id) And ($id > 0))
		   {
		    // Liste des disciplines dans ce groupe pour les mettre dans le "non groupe"
		    Include ("../../include/garennes_gestion_classe.php") ;
		    $sp = structure_pedagogique ($id_classe, $id, $millesime) ;
		    $nbr_sp = SQL_nbr_lignes ($sp) ;
		    For ($i = 1 ; $i <= $nbr_sp ; $i++)
		     {
		      $ligne = SQL_tableau_associatif ($sp, "") ;
		      $ok = change_groupe_service_prof ($id_classe, $ligne ["id_service_prof"], $id, 0, $millesime, $id_sql) ;
		     }
		    $ok = SQL_commande ("DELETE FROM groupement_disciplines_attribution WHERE id_groupement_discipline_definition='".$id."'", $id_sql) ;
		    $ok = SQL_commande ("DELETE FROM groupement_disciplines_definition WHERE id_groupement_discipline_definition='".$id."' LIMIT 1", $id_sql) ;
		    $resultats = SQL_commande ("SELECT id_groupement_discipline_definition FROM groupement_disciplines_definition WHERE id_classe='".$id_classe."' AND millesime='".$millesime."' ORDER BY position", $id_sql) ;
		    $nbr = SQL_nbr_lignes ($resultats) ;
		    If ($nbr > 0)
		     {
	              For ($i = 1 ; $i <= $nbr ; $i++)
		       {
		        $ligne = SQL_ligne_suivante ($resultats) ;
		        $ok = SQL_commande ("UPDATE groupement_disciplines_definition SET position='".$i."' WHERE id_groupement_discipline_definition='".$ligne [0]."' LIMIT 1", $id_sql) ;
		       }
		     }
		   }
		  $modif = 0 ;
		  $maj = 1 ;
                  Break ;
	 // Inversion deux positions
	 Case 5 : $id1 = var_courante ("id1", 0, 0) ;
	          $id2 = var_courante ("id2", 0, 0) ;
		  $pos1 = var_courante ("pos1", 0, 0) ;
		  $pos2 = var_courante ("pos2", 0, 0) ;
		  If (($id1 > 0) And ($id2 > 0) And ($pos1 > 0) And ($pos2 > 0))
		   {
		    $ok = SQL_commande ("UPDATE groupement_disciplines_definition SET position='".$pos1."' WHERE id_groupement_discipline_definition='".$id1."' LIMIT 1", $id_sql) ;
		    $ok = SQL_commande ("UPDATE groupement_disciplines_definition SET position='".$pos2."' WHERE id_groupement_discipline_definition='".$id2."' LIMIT 1", $id_sql) ;
		   }
	          Break ;
        }
      }
     // Determine le nombre et le nom des groupements de disciplines
     $groupe_disc = groupement_disciplines ($id_classe, $millesime) ;
     Echo entete_page ("","") ;
     Echo "<html><head>" ;
     entete_html ("Garennes", "", 1) ;
     Echo styles ("none", "none", "none", $l ["lien"], "none") ;
     Include ("./edite_classe.js") ;
     Echo "<script type=\"text/javascript\">function fermeture(){window.open(\"./edite_classe.php?code=".$_SESSION ["code"]."&id_classe=".$id_classe."\",\"travail\",\"\");window.close();}</script>" ;
     Echo "</head>" ;
     Echo "<body background=\"../images/fond.png\" text=\"#000000\" onContextMenu=\"return false\">" ;
     Echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse:collapse\" width=\"100%\">" ;
     Echo "<tr><td></td><td align=\"center\"><font color=\"#0000FF\"><b>Ajouter/Modifier&nbsp;".$intitule_groupe_disc [1]."</b></font></td>" ;
     Echo "<td align=\"right\"><a href=\"javascript:fermeture()\"><img src=\"../../images/quitter.png\" border=\"0\" title=\"Fermer la fen&ecirc;tre...\"></a></td></tr></table>" ;
     // Affichage des groupements existants
     If (($groupe_disc [0][0] > 0) And ($groupe_disc [1][0] >= 0))
      {
       Echo "<form action=\"./edite_classe.php\" medthod=\"post\" name=\"efface_groupe\">" ;
       Echo "<input type=\"hidden\" name=\"groupe_cert\" value=\"".$groupe_cert."\">" ;
       Echo "<input type=\"hidden\" name=\"id_etab\" value=\"".$id_etab."\">" ;
       Echo "<input type=\"hidden\" name=\"id_classe\" value=\"".$id_classe."\">" ;
       Echo "<input type=\"hidden\" name=\"action\" value=\"4\">" ;
       Echo "<input type=\"hidden\" name=\"id\" value=\"\">" ;
       Echo "</form>" ;
       Echo "<table border=\"1\" cellpadding=\"0\" cellspacing=\"0\" style=\"border:1px #000000 solid;border-collapse:collapse\" align=\"center\" bgcolor=\"".$l ["couleur_fond"]."\">" ;
       $ligne0 = "<tr bgcolor=\"".$l ["lien"]."\"><td align=\"center\">&nbsp;Action&nbsp;</td>" ;
       $ligne0 .= "<td align=\"center\">&nbsp;Position&nbsp;</td>" ;
       $ligne0 .= "<td align=\"center\">&nbsp;Nom&nbsp;</td>" ;
       $ligne0 .= "<td align=\"center\">&nbsp;Code&nbsp;</td>" ;
       $ligne0 .= "<td align=\"center\">&nbsp;Cr&eacute;dit&nbsp;</td>" ;
       $ligne0 .= "<td>&nbsp;Coefficient&nbsp;</td></tr>" ;
       For ($j = 1 ; $j <= $groupe_disc [0][0] ; $j++)
        {
         $ligne0 .= "<tr" ; If ($j%2 == 1) { $ligne1 .= " bgcolor=\"".$l ["texte"]."\"" ; }
         $ligne0 .= "><td" ; If ($j%2 == 1) { $ligne0 .= " bgcolor=\"".$l ["texte"]."\"" ; }
         $ligne0 .= ">&nbsp;<a href=\"./edite_classe.php?groupe_cert=".$groupe_cert."&id_etab=".$id_etab."&id_classe=".$id_classe."&action=2&id=".$groupe_disc [$j][0]."\"><img src=\"../images/edition.png\" border=\"0\" title=\"&Eacute;dition...\"></a>" ;
	 $ligne0 .= "&nbsp;<a href=\"javascript:valide_groupe(".$groupe_disc [$j][0].",'".$intitule_groupe_disc [0]."','".$groupe_disc [$j][1]."')\"><img src=\"../images/effacer.png\" border=\"0\" title=\"Supprimer...\"></a>" ;
	 If (($j >= 1) And ($j < $groupe_disc [0][0]) And ($groupe_disc [0][0] > 1))
	  {
	   $ligne0 .= "&nbsp;<a href=\"./edite_classe.php?groupe_cert=".$groupe_cert."&id_etab=".$id_etab."&id_classe=".$id_classe."&action=5&id1=".$groupe_disc [$j][0]."&id2=".$groupe_disc [$j+1][0]."&pos2=".$j."&pos1=".($j+1)."\"><img src=\"../images/fleche_bas.png\" border=\"0\" title=\"D&eacute;placer vers le bas...\"></a>" ;
	  }
	 If (($j > 1) And ($j <= $groupe_disc [0][0]))
	  {
	   $ligne0 .= "&nbsp;<a href=\"./edite_classe.php?groupe_cert=".$groupe_cert."&id_etab=".$id_etab."&id_classe=".$id_classe."&action=5&id1=".$groupe_disc [$j][0]."&id2=".$groupe_disc [$j-1][0]."&pos2=".$j."&pos1=".($j-1)."\"><img src=\"../images/fleche_haut.png\" border=\"0\" title=\"D&eacute;placer vers le haut...\"></a>" ;
	  }
         $ligne0 .= "&nbsp;</td>" ;
	 $ligne0 .= "<td align=\"center\">&nbsp;".$groupe_disc [$j][5]."&nbsp;</td>" ;
         $ligne0 .= "<td>&nbsp;".$groupe_disc [$j][1]."&nbsp;</td>" ;
	 $ligne0 .= "<td align=\"center\">&nbsp;".$groupe_disc [$j][2]."&nbsp;</td>" ;
	 $ligne0 .= "<td align=\"center\">&nbsp;".$groupe_disc [$j][3]."&nbsp;</td>" ;
	 $ligne0 .= "<td align=\"center\">&nbsp;".Str_Replace (".",",",$groupe_disc [$j][4])."&nbsp;</td></tr>" ;
        }
       Echo $ligne0."</table><br>" ;
      }
     Echo "<form action=\"./edite_classe.php\" medthod=\"post\">" ;
     Echo "<input type=\"hidden\" name=\"groupe_cert\" value=\"".$groupe_cert."\">" ;
     Echo "<input type=\"hidden\" name=\"id_etab\" value=\"".$id_etab."\">" ;
     Echo "<input type=\"hidden\" name=\"id_classe\" value=\"".$id_classe."\">" ;
     Echo "<table cellpadding=\"0\" cellspacing=\"0\" style=\"border:1px #000000 solid;border-collapse:collapse\" align=\"center\" bgcolor=\"".$l ["couleur_fond"]."\">" ;
     Echo "<tr><td align=\"center\" bgcolor=\"".$l ["lien"]."\">" ;
     If ($modif == 0) { Echo "Ajouter" ; } Else { Echo "Modifier" ; }
     Echo " ".$intitule_groupe_disc [1]." :</td></tr>" ;
     Echo "<tr><td><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse:collapse\" width=\"100%\"><tr><td colspan=\"2\">&nbsp;</td></tr>" ;
     If ($modif == 0)
      {
       If (($groupe_disc [0][0] > 0) And ($groupe_disc [1][0] >= 0))
        {
         Echo "<tr><td align=\"right\">&nbsp;Position&nbsp;:&nbsp;</td>" ;
         Echo "<td><select name=\"position\"><option value=\"0\">Avant '".$groupe_disc [1][1]."'</option>" ;
         For ($j = 1 ; $j < $groupe_disc [0][0] ; $j++)
          {
           Echo "<option value=\"".$j."\">Entre '".$groupe_disc [$j][1]."' et '".$groupe_disc [$j+1][1]."'</option>" ;
          }
         Echo "<option value=\"".$groupe_disc [0][0]."\" selected>Apr&egrave;s '".$groupe_disc [$groupe_disc [0][0]][1]."'</option>" ;
         Echo "</select>&nbsp;</td></tr><tr><td colspan=\"2\">&nbsp;</td></tr>" ;     
	}
       Else { Echo "<input type=\"hidden\" name=\"position\" value=\"0\">" ; }
       Echo "<input type=\"hidden\" name=\"action\" value=\"1\">" ;
      }
     ElseIf ($modif == 1)
      {
       Echo "<tr><td align=\"right\">&nbsp;Position&nbsp;:&nbsp;</td>" ;
       Echo "<td><b>".$groupe_discipline [5]."</b>&nbsp;</td></tr><tr><td colspan=\"2\">&nbsp;</td></tr>" ;
       Echo "<input type=\"hidden\" name=\"id\" value=\"".$groupe_discipline [0]."\">" ;
       Echo "<input type=\"hidden\" name=\"action\" value=\"3\">" ;
      }
     Echo "<tr><td align=\"right\">&nbsp;Nom&nbsp;:&nbsp;</td>" ;
     Echo "<td><input type=\"texte\" name=\"nom_gd\" value=\"" ; If ($modif == 1) { Echo $groupe_discipline [1] ; }
     Echo "\" size=\"21\" maxlength=\"200\">&nbsp;</td></tr><tr><td colspan=\"2\">&nbsp;</td></tr>" ;
     Echo "<tr><td align=\"right\">&nbsp;Code&nbsp;:&nbsp;</td>" ;
     Echo "<td><input type=\"texte\" name=\"code_gd\" value=\"" ; If ($modif == 1) { Echo $groupe_discipline [2] ; }
     Echo "\" size=\"21\" maxlength=\"20\">&nbsp;</td></tr><tr><td colspan=\"2\">&nbsp;</td></tr>" ;
     Echo "<tr><td align=\"right\">&nbsp;Cr&eacute;dit&nbsp;:&nbsp;</td>" ;
     Echo "<td><input type=\"texte\" name=\"credit_gd\" value=\"" ; If ($modif == 1) { Echo $groupe_discipline [3] ; }
     Echo "\" size=\"7\" maxlength=\"11\">&nbsp;</td></tr><tr><td colspan=\"2\">&nbsp;</td></tr>" ;
     Echo "<tr><td align=\"right\">&nbsp;Coefficient&nbsp;:&nbsp;</td>" ;
     Echo "<td><input type=\"texte\" name=\"coefficient_gd\" value=\"" ; If ($modif == 1) { Echo Str_Replace (".",",",$groupe_discipline [4]) ; } Else { Echo "1,0" ; }
     Echo "\" size=\"7\" maxlength=\"13\">&nbsp;</td></tr><tr><td colspan=\"2\">&nbsp;</td></tr>" ;
     
     Echo "<tr><td align=\"right\" colspan=\"2\"><input type=\"image\" src=\"../images/valider.png\" title=\"Valider...\">&nbsp;</td></tr><tr><td colspan=\"2\">&nbsp;</td></tr>" ;
     Echo "</table></td></tr></table>" ;
     Echo "</form>" ;
     If ($modif == 1)
      {
       Echo "<center><form action=\"./parametrage.php\" method=\"post\">" ;
       Echo "<input type=\"hidden\" name=\"saisie\" value=\"-1\">" ;
       Echo "<input type=\"hidden\" name=\"id_etab\" value=\"".$id_etab."\">" ;
       Echo "<input type=\"image\" src=\"../images/annuler.png\" title=\"Valider...\"></form></center>" ;
      }
     If ($maj == 1) { Echo "<script type=\"text/javascript\">window.open(\"./edite_classe.php?code=".$_SESSION ["code"]."&id_classe=".$id_classe."\",\"travail\",\"\");</script>" ; }
     Echo "</body></html>" ;
    }
   Else
    {
     Echo "<html><body><script>window.open(\"./edite_classe.php?code=".$_SESSION ["code"]."&id_classe=".$id_classe."\",\"travail\",\"\");window.close();</script></body></html>" ;
    }
   Exit ;
  }

 If ((IsSet ($modif_discipline)) And ($modif_discipline == 1))
  {
   $sp = var_courante ("sp", 0, null) ;
   $nouvelle_disc = var_courante ("nouvelle_disc", 0, null) ;
   $err = change_discipline ($sp, $nouvelle_disc) ;
   Switch ($err)
    {
     Case 1  : $message = "Changement de ".$intitule_disc [0]." effectu&eacute;e." ;
               Break ;
     Case -2 : $message = "Erreur de changement de ".$intitule_disc [0]." : Le service enseignant n'existe pas.<BR>Contactez votre administrateur !" ;
               Break ;
     Case -1 : $message = "Erreur de changement de ".$intitule_disc [0]." : N'existe pas.<BR>Contactez votre administrateur !" ;
               Break ;
    }
   If (IsSet ($retour) And ($retour != "edite_classe.php")) { Header ("Location: ".$retour."?id_prof=".$id_prof."&id_classe=".$id_classe) ; }
  }

 // Page principale
 // Determine le nombre et le nom des groupements de disciplines
 $groupe_disc = groupement_disciplines ($id_classe, $millesime) ;
 If ($id_classe > 0)
  {
   $resultat = SQL_commande ("SELECT * FROM classes WHERE id_classe='".$id_classe."' LIMIT 1", $id_sql) ;
   $ligne = SQL_tableau_associatif ($resultat, "") ;
   $nom = $ligne ["nom"] ;
   $nom_bref = $ligne ["nom_bref"] ;
   $groupe_discipline = restaure_configuration_defaut ("SYSTEME_PARAM","GESTION","GROUPE_DISC_ACTIVATION_".$ligne ["etablissement"], 0) ;
   $id_cpe = $ligne ["cpe"] ;
  }
 Else { $groupe_discipline = 0 ; }
 
 Echo entete_page ("","") ;
 Echo "<html><head>" ;
 entete_html ("Garennes", "travail", 1) ;
 Echo styles ("none", "none", "none", $l ["lien"], "none") ;
 Include ("./edite_classe.js") ;
 If (($groupe_discipline == 1) And ($groupe_disc [0][0] > 0) And ($groupe_disc [1][0] >= 0))
  {
   Echo "<script type=\"text/javascript\">" ;
   // Gestion des onglets
   $gtd = groupement_toute_discipline ($id_classe) ;
   If (IsSet ($action) And ($action ==2))
    {
     $id_groupe_disc = var_courante ("id_groupe_disc", 0, 0) ;
     $onglet = $gtd ;
     For ($i = 1 ; $i <= $groupe_disc [0][0] ; $i++)
      {
       If ($id_groupe_disc == $groupe_disc [$i][0]) { $onglet += $i ; Break ; }
      }
    }
   Else { $onglet = var_courante ("onglet", 0, 0) ; }
   Include ("../../include/onglets.js") ;
   Echo "onglet_style ('#000000','#000000','#000000','#000000','#000000','#000000','#000000','#000000','#000000','#000000','#000000','#000000','#3030ff','".$l ["nom"]."','".$l ["couleur_fond"]."','".$l ["couleur_fond"]."','../images/degrade.gif','');" ;//#80add6
   Echo "var onglets = new definition_onglet (\"onglets\", '', '', 50, 25, ".$onglet.", '".$l ["lien"]."');" ;
   Echo "onglets.ajouter (new item_onglet (\"&nbsp;Attribution&nbsp; &nbsp;disciplines&nbsp;\", \"Attribution aux ".$intitule_groupe_disc [2]."...\"));" ;
   If ($gtd == 1)
    {
     Echo "onglets.ajouter (new item_onglet (\"&nbsp;Sans&nbsp; &nbsp;Attribution&nbsp; &nbsp;<font size='-2'>Coeff.&nbsp;1,00</font>&nbsp;\", \"Liste des disciplines sans ".$intitule_groupe_disc [0]."...\"));" ;
     $ok_sans_groupe = 1 ;
    }
   Else { $ok_sans_groupe = 0 ; }
   For ($i = 1 ; $i <= $groupe_disc [0][0] ; $i++)
    {
     // (".$groupe_disc [$i][2].")
     Echo "onglets.ajouter (new item_onglet (\"&nbsp;".$groupe_disc [$i][1]."&nbsp; &nbsp;<font size='-2'>Coeff.&nbsp;".Str_Replace (".",",",$groupe_disc [$i][4])."</font>&nbsp;\", \"".$intitule_disc [0]." '".$groupe_disc [$i][1]."'...\"));" ;
    }
   Echo "</script>" ;
  }
 Echo "</head>" ;
 Echo "<body background=\"../images/fond.png\" text=\"#000000\" onContextMenu=\"return false\">" ;
 Echo "<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" STYLE=\"border-collapse:collapse\">" ;
 Echo "<tr><td></td><td width=\"100%\" align=\"center\">" ;
 If ($id_classe == 0) { Echo "Ajouter&nbsp;".$intitule_page [1] ; }
 Else { Echo "Modification/&Eacute;dition&nbsp;:&nbsp;<font COLOR=\"#0000FF\"><I>".$nom."</I>&nbsp;(".$nom_bref.")</font>" ; }
 Echo "</td>" ;
 Echo "<td><a href=\"javascript:ouvrefenetre('./aide.php?aide=5&rep=../../include/',350,650);\" oldref>" ;
 Echo "<img src=\"../images/aide.png\" border=\"0\"></a></td>" ;
 Echo "</tr><table>" ;
 
 If (IsSet ($mess) Or IsSet ($rapport)) { affiche_message ($mess, $rapport) ; }
 
 If (IsSet ($message))
  {
   Echo "<br><center><b><font color=\"#ff0000\"><blink>".$message."</blink></font>" ;
   If (IsSet ($rapport) And ($rapport != "")) { Echo "<br><textarea cols=\"80\" rows=\"5\" disabled>".$rapport."</textarea>" ; }
   Echo "</center>" ;
  }
 
 If ($id_classe > 0)
  {
   $classes = SQL_commande ("SELECT * FROM classes WHERE millesime='".$millesime."' ORDER BY nom_bref", $id_sql) ;
   $compteur = 1 ;
   $cl = SQL_tableau_associatif ($classes, "") ;
   If ($cl ["id_classe"] == $id_classe)
    {
     If (SQL_nbr_lignes ($classes) > 1)
      {
       $cl = SQL_tableau_associatif ($classes, "") ;
       $id_suivante = $cl ["id_classe"] ;
       $nom_suivante = $cl ["nom"]." (".$cl ["nom_bref"].")" ;
       $id_precedente = 0 ;
      }
     Else
      {
       $id_suivante = 0 ;
       $id_precedente = 0 ;
      }
    }
   Else
    {
     $ok = 0 ;
     While (($ok==0) And ($compteur < SQL_nbr_lignes ($classes)))
      {
       $id_precedente = $cl ["id_classe"] ;
       $nom_precedent = $cl ["nom"]." (".$cl ["nom_bref"].")" ;
       $cl = SQL_tableau_associatif ($classes, "") ;
       $compteur++ ;
       If ($cl ["id_classe"] == $id_classe)
        {
         If (SQL_nbr_lignes ($classes) > $compteur)
          {
           $cl = SQL_tableau_associatif ($classes, "") ;
           $id_suivante = $cl ["id_classe"] ;
           $nom_suivante = $cl ["nom"]." (".$cl ["nom_bref"].")" ;
	   $ok = 1 ;
          }
         Else
          {
           $id_suivante = 0 ;
	   $ok = 1 ;
          }
        }
      }
    }
  }

 // Verification des options et groupes
 $resul = SQL_commande ("SELECT id_service_classe FROM services_classe WHERE classe='".$id_classe."' AND (optionnelle='1' OR groupe>'0') AND millesime='".$millesime."' LIMIT 1", $id_sql) ;
 $nbr_groupes_option = SQL_nbr_lignes ($resul) ;
 
 // ======================================= Profil classe
 $id_css = "entree_normale" ;
 Echo "<form action=\"./edite_classe.php\" method=\"post\" name=\"profil_classe\">" ;
 Echo "<table border=\"0\" align=\"center\" bgcolor=\"".$l ["couleur_fond"]."\" id=\"bords_ext\">" ;
 Echo "<tr><td colspan=\"9\">&nbsp;</td></tr>" ;
 Echo "<tr>" ;
 // Passage classe precedente
 Echo "<td rowspan=\"9\">" ;
 If (IsSet ($id_precedente) And ($id_precedente > 0) And ($id_classe > 0))
  {
   Echo "<a href=\"./edite_classe.php?code=".$_SESSION ["code"]."&id_classe=".$id_precedente."\"><img src=\"../images/fleche_gauche.png\" title=\"Passer au pr&eacute;c&eacute;dent : ".$nom_precedent."\" alt=\"Precedent\" border=\"0\"></a>" ;
  }
 Echo "</td>" ;
 // Etablissement si plusieurs
 $etablissement = SQL_commande ("SELECT * FROM etablissements WHERE millesime='".$millesime."' ORDER BY nom,numero", $id_sql) ;
 Echo "<td align=\"right\">&nbsp;&Eacute;tablissement&nbsp;:&nbsp;</td>" ;
 Echo "<td colspan=\"6\">" ;
 If (SQL_nbr_lignes ($etablissement) > 1)
  {
   Echo "<select name=\"id_etab\" id=\"".$id_css."\"><option value=\"0\"></option>" ;
   For ($i = 0 ; $i < SQL_nbr_lignes ($etablissement) ; $i++)
    {
     $etab = SQL_tableau_associatif ($etablissement, "") ;
     Echo "<option value=\"".$etab ["id_etablissement"]."\"" ;
     If ($etab ["id_etablissement"] == $ligne ["etablissement"]) { Echo " selected" ; }
     Echo ">".SubStr ($etab ["nom"], 0, 30)."&nbsp;(".$etab ["numero"].")</option>" ;
    }
   Echo "</select>" ;
  }
 Else
  {
   $etab = SQL_tableau_associatif ($etablissement, "") ;
   If ($ligne ["id_etablissement"] == 0) { $ok = SQL_commande ("UPDATE classes SET etablissement='".$etab ["id_etablissement"]."' WHERE millesime='".$millesime."'", $id_sql) ; }
   Echo "<input type=\"hidden\" name=\"id_etab\" value=\"".$etab ["id_etablissement"]."\">" ;
   Echo "<b>".SubStr ($etab ["nom"], 0, 30)."&nbsp;(".$etab ["numero"].")</b>" ;
  }
 Echo "</td>" ;
 // Passage classe suivante
 Echo "<td align=\"right\" rowspan=\"9\">" ;
 If (IsSet ($id_suivante) And ($id_suivante > 0) And ($id_classe > 0))
  {
   Echo "<a href=\"./edite_classe.php?code=".$_SESSION ["code"]."&id_classe=".$id_suivante."\"><img src=\"../images/fleche_droite.png\" title=\"Passer au suivant : ".$nom_suivante."\" alt=\"Suivant\" border=\"0\"></a>" ;
  }
 Echo "</td>" ;
 Echo "</tr>" ;
 // Nom long
 Echo "<tr>" ;
 Echo "<td align=\"right\">&nbsp;Nom&nbsp;:&nbsp;</td>" ;
 Echo "<td colspan=\"6\"><input type=\"text\" name=\"nom\" value=\"".$ligne ["nom"]."\" size=\"21\" maxlength=\"20\" id=\"".$id_css."\">&nbsp;</td>" ;
 Echo "</tr>" ;
 // Nom bref
 Echo "<tr>" ;
 Echo "<td align=\"right\">&nbsp;Nom&nbsp;bref&nbsp;(ou&nbsp;code&nbsp;classe)&nbsp;:&nbsp;</td>" ;
 Echo "<td colspan=\"6\"><input type=\"text\" name=\"nom_bref\" value=\"".$ligne ["nom_bref"]."\" size=\"6\" maxlength=\"5\" id=\"".$id_css."\">&nbsp;</td>" ;
 Echo "</tr>" ;
 // Niveau
 $niveaux = SQL_commande ("SELECT id_type_niveau,nom FROM types_niveaux ORDER BY nom", $id_sql) ;
 $type_niveau [0][0] = SQL_nbr_lignes ($niveaux) ;
 For ($i = 1 ; $i <= $type_niveau [0][0] ; $i++)
  {
   $niveau = SQL_ligne_suivante ($niveaux) ;
   $type_niveau [$i][0] = $niveau [0] ;
   $type_niveau [$i][1] = $niveau [1] ;
  }
 Echo "<tr>" ;
 Echo "<td align=\"right\">&nbsp;Niveau&nbsp;:&nbsp;</td>" ;
 Echo "<td colspan=\"6\"><select name=\"id_type_niveau\" id=\"".$id_css."\"><option value=\"0\"></option>" ;
 For ($i = 1 ; $i <= $type_niveau [0][0] ; $i++)
  {
   Echo "<option value=\"".$type_niveau [$i][0]."\"" ; If ($type_niveau [$i][0] == $ligne ["id_type_niveau"]) { Echo " selected" ; }
   Echo ">".$type_niveau [$i][1]."</option>" ;
  }
 Echo "</select>&nbsp;</td>" ;
 Echo "</tr>" ;
 // Prof principal
 $res = SQL_commande ("SELECT * FROM utilisateurs WHERE droits='".$droit_prof."' AND millesime='".$millesime."' ORDER BY nom,prenom,login", $id_sql) ;
 $nbr_res = SQL_nbr_lignes ($res) ;
 Echo "<tr>" ;
 Echo "<td align=\"right\">&nbsp;Enseignant&nbsp;principal&nbsp;:&nbsp;</td>" ;
 Echo "<td colspan=\"6\"><select name=\"id_prof_princ\" id=\"".$id_css."\"><option value=\"0\"></option>" ;
 For ($i = 0 ; $i < $nbr_res ; $i++)
  {
   $r = SQL_tableau_associatif ($res, "") ;
   Echo "<option value=\"".$r ["id_utilisateur"]."\"" ;
   If (($r ["id_utilisateur"] == $ligne ["id_prof_princ"]) Or (($r ["numen"] == $ligne ["numen_prof_princ"]) And ($r ["numen"] != ""))) { Echo " selected" ; }
   Echo ">".$r ["nom"]."&nbsp;".$r ["prenom"]."</option>" ;
  }
 Echo "</select>&nbsp;</td>" ;
 Echo "</tr>" ;
 // Vie scolaire
 $res = SQL_commande ("SELECT * FROM utilisateurs WHERE droits='".$droit_cpe."' AND millesime='".$millesime."' ORDER BY nom,prenom,login", $id_sql) ;
 Echo "<tr>" ;
 Echo "<td align=\"right\">&nbsp;CPE&nbsp;:&nbsp;</td>" ;
 Echo "<td colspan=\"6\">" ;
 If (SQL_nbr_lignes ($res) > 0)
  {
   Echo "<select name=\"id_cpe\" id=\"".$id_css."\">" ;
   If (SQL_nbr_lignes ($res) > 1)
    {
     Echo "<option value=\"0\"></option>" ;
     For ($i = 0 ; $i < SQL_nbr_lignes ($res) ; $i++)
      {
       $r = SQL_tableau_associatif ($res, "") ;
       Echo "<option value=\"".$r ["id_utilisateur"]."\"" ;
       If ($r ["id_utilisateur"] == $ligne ["cpe"]) { Echo " selected" ; }
       Echo ">".$r ["nom"]."&nbsp;".$r ["prenom"]."</option>" ;
      }
    }
   Else
    {
     $r = SQL_tableau_associatif ($res, "") ;
     // Mise a jour de l'ensemble des classes pour ce CPE unique
     $ok = SQL_commande ("UPDATE classes SET cpe='".$r ["id_utilisateur"]."' WHERE millesime='".$millesime."'", $id_sql) ;
     $ok = SQL_commande ("UPDATE vie_scolaire SET cpe='".$r ["id_utilisateur"]."',numen_cpe='".$r ["numen"]."' WHERE millesime='".$millesime."'", $id_sql) ;
     Echo "<option value=\"".$r ["id_utilisateur"]."\" selected>".$r ["nom"]."&nbsp;".$r ["prenom"]."</option>" ;
    }
   Echo "</select>&nbsp;" ;
  }
 Else
  {
   Echo "<input type=\"hidden\" name=\"id_cpe\" value=\"0\">&nbsp;Aucun&nbsp;" ;
  }
 Echo "</td>" ;
 Echo "</tr>" ;
 // Type de saisie CPE
 Echo "<tr>" ;
 Echo "<td align=\"right\">&nbsp;Type&nbsp;de&nbsp;saisie&nbsp;CPE&nbsp;:&nbsp;</td>" ;
 Echo "<td colspan=\"6\"><select name=\"type_saisie_cpe\" id=\"".$id_css."\">" ;
 // Affichage du style numero -1
 Echo "<option value=\"-2\"" ; If ($ligne ["type_saisie_cpe"] == 0) { Echo " selected" ; }
 Echo ">Saisie&nbsp;suivant&nbsp;le&nbsp;param&eacute;trage&nbsp;g&eacute;n&eacute;ral&nbsp;de&nbsp;l'&eacute;tablissement</option>" ;
 // Affichage du style numero 0
 Echo "<option value=\"0\"" ; If ($ligne ["type_saisie_cpe"] == 0) { Echo " selected" ; }
 Echo ">Aucune&nbsp;saisie</option>" ;
 // Affichage du style numero 1
 Echo "<option value=\"1\"" ; If ($ligne ["type_saisie_cpe"] == 1) { Echo " selected" ; }
 Echo ">Bulletin&nbsp;avec&nbsp;saisie&nbsp;des&nbsp;absences/retards&nbsp;et&nbsp;observations&nbsp;(120&nbsp;caract&egrave;res)</option>" ;
 // Affichage du style numero 2
 Echo "<option value=\"2\"" ; If ($ligne ["type_saisie_cpe"] == 2) { Echo " selected" ; }
 Echo ">Bulletin&nbsp;avec&nbsp;appr&eacute;ciations&nbsp;uniquement&nbsp;(240&nbsp;caract&egrave;res)</option>" ;
 // Affichage du style numero 3
 Echo "<option value=\"3\"" ; If ($ligne ["type_saisie_cpe"] == 3) { Echo " selected" ; }
 Echo ">".$intitule_disc [0]."&nbsp;avec&nbsp;affichage&nbsp;des&nbsp;note&nbsp;et&nbsp;appr&eacute;ciation</option>" ;
 // Affichage du style numero 4
 Echo "<option value=\"4\"" ; If ($ligne ["type_saisie_cpe"] == 4) { Echo " selected" ; }
 Echo ">".$intitule_disc [0]."&nbsp;avec&nbsp;affichage&nbsp;des&nbsp;note&nbsp;,appr&eacute;ciation,&nbsp;minimum,&nbsp;maximum&nbsp;et&nbsp;moyenne&nbsp;".$intitule_page [0]."</option>" ;
 Echo "</select></td>" ;
 Echo "</tr>" ;
 // Periode Division
 $periode = SQL_commande ("SELECT * FROM types_periode WHERE millesime='".$millesime."' ORDER BY nom_periode", $id_sql) ;
 Echo "<tr>" ;
 Echo "<td align=\"right\">&nbsp;Ann&eacute;e&nbsp;divis&eacute;e&nbsp;en&nbsp;</td>" ;
 Echo "<td colspan=\"6\"><select name=\"periode\" id=\"".$id_css."\"><option value=\"0\"></option>" ;
 For ($i = 0 ; $i < SQL_nbr_lignes ($periode) ; $i++)
  {
   $prd = SQL_tableau_associatif ($periode, "") ;
   Echo "<option value=\"".$prd ["id_type_periode"]."\"" ;
   If ($prd ["id_type_periode"] == $ligne ["periode"]) { Echo " selected" ; }
   Echo ">".$prd ["nom_periode"]."</option>" ;
  }
 Echo "</select></td>" ;
 Echo "</tr>" ;
 // Signature
 $signatures = SQL_commande ("SELECT * FROM signatures ORDER BY nom", $id_sql) ;
 Echo "<tr>" ;
 Echo "<td align=\"right\">&nbsp;Signature&nbsp;du&nbsp;bulletin/relev&eacute;&nbsp;:&nbsp;</td>" ;
 Echo "<td colspan=\"".(6-$nbr_groupes_option)."\"><select name=\"id_signature\" id=\"".$id_css."\"><option value=\"0\"></option>" ;
 For ($i = 0 ; $i < SQL_nbr_lignes ($signatures) ; $i++)
  {
   $signe = SQL_tableau_associatif ($signatures, "") ;
   Echo "<option value=\"".$signe ["id_signature"]."\"" ;
   If ($signe ["id_signature"] == $ligne ["signature"]) { Echo " selected" ; }
   Echo ">".$signe ["nom"]."</option>" ;
  }
 Echo "</select></td>" ;
 If ($nbr_groupes_option == 1)
  {
   Echo "<td align=\"right\">" ;
   Echo "<a href=\"./edite_eleves_classe.php?code=".$_SESSION ["code"]."&id_classe=".$id_classe."&annuler=./edite_classe.php\" border=\"0\">" ;
   Echo "<img src=\"../images/eleves.png\" title=\"&Eacute;diter les groupes/options.\" border=\"0\">" ;
   Echo "</a></td>" ;
  }
 Echo "</tr>" ;
 // Espace
 Echo "<tr><td colspan=\"9\">&nbsp;</td></tr>" ; 
 // Valider
 Echo "<tr><td align=\"center\" colspan=\"9\">" ;
 Echo "<input type=\"hidden\" name=\"action\" value=\"1\">" ;
 Echo "<input type=\"hidden\" name=\"code\" value=\"".$_SESSION ["code"]."\">" ;
 Echo "<input type=\"hidden\" name=\"id_classe\" value=\"".$id_classe."\">" ;
 Echo "<input type=\"image\" src=\"../images/valider.png\" name=\"requete\" value=\"Valider\" border=\"0\" alt=\"Valider\">" ;
 Echo "</td></tr></table></form>" ; 
 Echo "<br>" ;
 If ($id_classe > 0)
  {
   $ok_gdisc = 0 ;
   If ($groupe_discipline == 1)
    {
     Echo "<center><a href=\"javascript:ouvrefenetre('./edite_classe.php?id_classe=".$id_classe."&id_etab=".$ligne ["etablissement"]."&groupe_cert=1',400,700);\">" ;
     Echo "&nbsp;Ajouter/Modifier/Supprimer&nbsp;".$intitule_groupe_disc [1]."&nbsp;</a></center><br>" ;
     If (($groupe_disc [0][0] > 0) And ($groupe_disc [1][0] >= 0)) { $ok_gdisc = 1 ; }
    }
   // ======================================= Ajout d'un service
   Echo "<form action=\"./edite_classe.php\" method=\"post\" name=\"ajout_service_classe\">" ;
   Echo "<table align=\"center\" cellspacing=\"0\" cellpadding=\"0\" bgcolor=\"".$l ["couleur_fond"]."\" id=\"bords_ext\">" ;
   Echo "<tr><td colspan=\"".(7+$ok_gdisc)."\" align=\"center\"><b>&nbsp;Ajouter&nbsp;".$intitule_disc [1]."&nbsp;</b></td></tr>" ;
   Echo "<tr bgcolor=\"".$l ["lien"]."\">" ;
   If ($ok_gdisc == 1) { Echo "<td>&nbsp;".$intitule_groupe_disc [0]."&nbsp;</td>" ; }
   Echo "<td>&nbsp;".$intitule_disc [0]."&nbsp;</td>" ;
   Echo "<td align=\"center\">&nbsp;S.Disc.&nbsp;</td>" ;
   Echo "<td align=\"center\">&nbsp;Opt.&nbsp;</td>" ;
   Echo "<td align=\"center\">&nbsp;Gp.&nbsp;</td>" ;
   Echo "<td align=\"center\">&nbsp;Code&nbsp;Gp.&nbsp;</td>" ;
   Echo "<td>&nbsp;Coeff.&nbsp;</td>" ;
   Echo "<td align=\"center\">&nbsp;Enseignant&nbsp;</td>" ;
   Echo "<td></td>" ;
   Echo "</tr>" ;
   // Ajouter des disciplines
   $id_css = "entree_surbrillance" ; // "normale"
   Echo "<tr bgcolor=\"".$l ["nom"]."\">" ;
   If ($ok_gdisc == 1) 
    {
     // Groupe de disciplines
     Echo "<td><select name=\"id_groupe_disc\" id=\"".$id_css."\">&nbsp;<option value=\"0\"></option>" ;
     For ($i = 1 ; $i <= $groupe_disc [0][0] ; $i++) { Echo "<option value=\"".$groupe_disc [$i][0]."\">".$groupe_disc [$i][1]."</option>" ; }
     Echo "</select>" ;
    }
   // Nom
   Echo "<td><select name=\"id_disc\" id=\"".$id_css."\">&nbsp;<option value=\"0\"></option>" ;
   $resultat = SQL_commande ("SELECT id_discipline, nom_court FROM disciplines WHERE millesime='".$millesime."' ORDER BY nom_court", $id_sql) ;
   While ($ligne = SQL_ligne_suivante ($resultat)) { Echo "<option value=\"".$ligne [0]."\">".$ligne [1]."</option>" ; }
   Echo "</select></td>" ;
   // Sous-matiere
   Echo "<td><select name=\"id_sous_disc\" id=\"".$id_css."\">&nbsp;<option value=\"0\"></option>" ;
   
   $resultat = SQL_commande ("SELECT id_sous_discipline, nom FROM sous_disciplines ORDER BY nom", $id_sql) ;
   While ($ligne = SQL_ligne_suivante ($resultat)) { Echo "<option value=\"".$ligne [0]."\">".$ligne [1]."</option>" ; }
   Echo "</select></td>" ;
   // Option ?
   Echo "<td align=\"center\"><input type=\"checkbox\" name=\"option\" value=\"1\" id=\"".$id_css."\"></td>" ;
   // Groupe ?
   Echo "<td align=\"center\"><input type=\"checkbox\" name=\"groupe\" value=\"1\" id=\"".$id_css."\"></td>" ;
   // Code Groupe
   Echo "<td align=\"center\"><input type=\"text\" name=\"code_groupe\" size=\"9\" maxlength=\"8\" value=\"\" id=\"".$id_css."\"></td>" ;
   // Coefficient
   Echo "<td align=\"center\"><input type=\"text\" name=\"coeff\" size=\"4\" maxlength=\"7\" value=\"1,00\" id=\"".$id_css."\" style=\"text-align:right\"></td>" ;
   // Professeur
   $res = SQL_commande ("SELECT id_utilisateur,nom,prenom FROM utilisateurs WHERE droits='".$droit_prof."' AND millesime='".$millesime."' ORDER BY nom,prenom,login", $id_sql) ;
   $nbr_res = SQL_nbr_lignes ($res) ;
   Echo "<td><select name=\"id_prof\" id=\"".$id_css."\"><option value=\"0\"></option>" ;
   For ($i = 0 ; $i < $nbr_res ; $i++)
    {
     $r = SQL_ligne_suivante ($res) ;
     Echo "<option value=\"".$r [0]."\">".$r [1]."&nbsp;".$r [2]."</option>" ;
    }
   Echo "</select></td>" ;
   // Action
   Echo "<td align=\"center\">" ;
   Echo "<input type=\"hidden\" name=\"action\" value=\"2\">" ;
   Echo "<input type=\"hidden\" name=\"code\" value=\"".$_SESSION ["code"]."\">" ;
   Echo "<input type=\"hidden\" name=\"id_classe\" value=\"".$id_classe."\">" ;
   Echo "<input type=\"image\" src=\"../images/ajouter.png\" title=\"Ajouter ".$intitule_disc [1]."\" name=\"requete\" value=\"Ajouter\" border=\"0\" alt=\"Ajouter\">&nbsp;" ;
   Echo "</td></tr></table></form>" ;
   Echo "<br>" ;
   // ======================================= Etats
   If ($id_classe <> 0)
    {
     If (($ok_gdisc == 1) And ($groupe_disc [0][0] > 0) And ($groupe_disc [1][0] >= 0))
      {
       Echo "<table border=\"0\" align=\"center\" cellspacing=\"0\" cellpadding=\"0\" style=\"border-collapse:collapse\"><tr><td>" ;
       Echo "<script type=\"text/javascript\">onglets.afficher_entete();</script>" ;
       Echo "<div id=\"onglets0\" style=\"display:none;top:0px;left:0px;width:100%;height:100%;\">" ;
       Echo affichage_attributions ($id_classe, $millesime, $groupe_disc, "./edite_classe.php", "attribution") ;
       Echo "</div>" ;
       For ($i = 1 ; $i <= $groupe_disc [0][0]+$ok_sans_groupe ; $i++)
        {
	 // Etat d'un onglet
	 If ($i == $ok_sans_groupe) { $grd = 0 ; } Else { $grd = $groupe_disc [$i-$ok_sans_groupe][0] ; }
         Echo "<div id=\"onglets".$i."\" style=\"display:none;top:0px;left:0px;width:100%;height:100%;\">" ;
	 Echo affichage_etat ($id_classe, $grd, $millesime, $i) ;
	 Echo "</div>" ;
	}
       Echo "<script type=\"text/javascript\">onglets.afficher_pied();</script>" ;
       Echo "</td></tr></table>" ;
      }
     Else { Echo affichage_etat ($id_classe, -1, $millesime, 0) ; }
    }
   Echo "<form action=\"./liste_classes.php\" method=\"post\" name=\"annuler\">" ;
   Echo "<input type=\"hidden\" name=\"code\" value=\"".$_SESSION ["code"]."\">" ;
   Echo "<center><input type=\"image\" src=\"../images/annuler.png\" border=\"0\"></center>" ;
   Echo "</form>" ;
  }
 Echo "</body></html>" ;
?>